Решение на Разлика в сумите от Марио Даскалов

Обратно към всички решения

Към профила на Марио Даскалов

Резултати

  • 10 точки от тестове
  • 0 бонус точки
  • 10 точки общо
  • 15 успешни тест(а)
  • 0 неуспешни тест(а)

Код

package main
import "strings"
import "fmt"
func ExtractColumn(logContents string, column uint8) string {
lines := strings.Split(logContents, "\n")
values := make([]string, 0, len(lines))
for _, line := range lines {
if line == "" {
continue
}
entries := strings.SplitN(line, " ", 4)
if column == 0 {
values = append(values, fmt.Sprintf("%s %s\n", entries[0], entries[1]))
} else {
values = append(values, fmt.Sprintf("%s\n", entries[column+1]))
}
}
return strings.Join(values, "")
}

Лог от изпълнението

PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.004s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.004s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.005s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.004s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.003s
PASS
ok  	_/tmp/d20151103-24541-vuhb1o	0.005s

История (1 версия и 0 коментара)

Марио обнови решението на 02.11.2015 20:20 (преди над 2 години)

+package main
+
+import "strings"
+import "fmt"
+
+func ExtractColumn(logContents string, column uint8) string {
+ lines := strings.Split(logContents, "\n")
+ values := make([]string, 0, len(lines))
+ for _, line := range lines {
+ if line == "" {
+ continue
+ }
+
+ entries := strings.SplitN(line, " ", 4)
+ if column == 0 {
+ values = append(values, fmt.Sprintf("%s %s\n", entries[0], entries[1]))
+ } else {
+ values = append(values, fmt.Sprintf("%s\n", entries[column+1]))
+ }
+ }
+ return strings.Join(values, "")
+}