Signal Window Filter。直近の3個の入力の総和および直近の5個の入力の総和を出力せよ、というお題。
とっかかりすらつかめなかったがフォーラムでヒントを見つけた。
「入力を3個複製し、1遅延させたものと2遅延させたものを作る」
つまり、入力が 1 だったら、
- 入力を3個に複製: 1, 1, 1
- 1遅延させたもの: 1, 0, 1 → 次の入力, 1, 次の入力
- 2遅延させたもの: 1, 0, 0 → 次の入力, 1, 0 → 次の次の入力, 次の入力, 1
ということらしい。3個に複製した入力ラインを毎回足し算すれば、直近の3個の総和が取れる。