From 5905c68a1fbae71682ff2edea7c009ad0355e9fb Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 26 Aug 2016 09:21:31 +0200 Subject: Solve series --- go/series/series.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 go/series/series.go (limited to 'go/series/series.go') diff --git a/go/series/series.go b/go/series/series.go new file mode 100644 index 0000000..55f7eb2 --- /dev/null +++ b/go/series/series.go @@ -0,0 +1,25 @@ +package slice + +// All returns a list of all substrings of s with length n. +func All(n int, s string) []string { + var ret []string + for i, j := 0, n; j <= len(s); i, j = i+1, j+1 { + ret = append(ret, s[i:j]) + } + return ret +} + +// UnsafeFirst returns the first substring of s with length n. +func UnsafeFirst(n int, s string) string { + if len(s) >= n { + return s[:n] + } + return "" +} + +func First(n int, s string) (string, bool) { + if len(s) >= n { + return s[:n], true + } + return "", false +} -- cgit v1.2.3