Роман Селевенко, 619/2 группа SeqJoin 9358
Александр Куров, вольный слушатель SeqJoin 9874
f1from itertools import compressf1from itertools import compress
22
3def joinseq(*seq):3def joinseq(*seq):
t4    seq_it = [iter(s) for s in seq]t4    seq = [iter(s) for s in seq]
5    letters = [next(it) for it in seq_it]5    tmp = [next(it) for it in seq]
6    tmp = list(compress(letters, [el != -1 for el in letters]))6    t = list(compress(tmp, [el != -1 for el in tmp]))
7    while len(tmp):7    while len(t):
8        min_val = min(tmp)8        m = min(t)
9        yield min_val9        yield m
10        idx = letters.index(min_val)10        idx = tmp.index(m)
11        letters[idx] = next(seq_it[idx], -1)11        tmp[idx] = next(seq[idx], -1)
12        tmp = list(compress(letters, [el != -1 for el in letters]))12        t = list(compress(tmp, [el != -1 for el in tmp]))
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op