10つくったーでRPN脳のトレーニング
診断メーカーで作られた10つくったーというのがある。0〜9までの数字4個を出して、どんな計算をしてもいいから10を作るというもの。
10つくったー
これを逆ポーランド記法でやってしまおうとしばらく挑戦していた。ある程度ルールがあった方が面白いだろうと以下の縛りでやってみた。
(1)数字は出題順にスタックに積む
(2)DROPは使わない (DROPを使うと数字を捨てられてしまう)
(3)新たに数字はスタックに積まない
(4)1+,1-なども使わない
(5)ワード数は最小を目標にする
検算はgforthを使うと便利。以下はやってみた例。
5 1 4 9 - NEGATE * +
9 1 9 2 AND + +
2 7 6 9 ROT - + +
1 8 5 9 AND + +
1 8 5 9 SWAP DROP SWAP DROP + (よくない例)
しばらくやってると”見えてくる”ようになるぞ!みんなもやってみよう!