4

のような入力シーケンスがあります8, 7, 6, 5, 4, 3, 2, 1, 0, 5, 4, 3, 2, 1, 0, 4。結果が示すべきものは です0, 0

ええ、これは簡単でしょう。0, 0しかし、入力が のみの場合、結果が になりたくありません0, 0

ここで重要なのは0、前の値がゼロより大きい場合にのみ公開する必要があるということです。

4

1 に答える 1

4
IObservable<int> source = new[] { 8, 7, 6, 5, 4, 3, 2, 1, 0, 5, 4, 3, 2, 1, 0, 4 }.ToObservable();
IObservable<int> edges = source.Zip(source.Skip(1), (f, s) => Tuple.Create(f, s))
    .Where(t => t.Item1 > 0 && t.Item2 == 0)
    .Select(t => t.Item2);
于 2013-08-14T19:49:14.920 に答える