Стефани обнови решението на 10.11.2015 00:16 (преди над 2 години)
+package main
+
+func getMessages(log chan string, result chan string) {
+ for {
+ msg, ok := <-log
+ if !ok {
+ break
+ } else {
+ result <- msg
+ }
+ }
+}
+
+func OrderedLogDrainer(logs chan (chan string)) chan string {
+ result := make(chan string)
+
+ for log := range logs {
+ go getMessages(log, result)
+ }
+
+ return result
+}
+
+func main() {
+
+}
Махни празната функция main()
, ще пречи при автоматичната проверка на решенията.
Относно задачата: в момента изглежда нямаш строга подредба на резултатите. Ако вземем примера от условието на задачата, нямаш гаранция, че резултата ще излезе подреден, може при теб да бъде по в някакъв разбъркан ред, примерно:
1 test message 1 in first
2 test message 1 in second
1 test message 2 in first
1 test message 3 in first
2 test message 2 in second
3 test message 1 in third
1 test message 4 in first
...