|
|
||
解けそうな問題解いて遊んでみる。
この問題を解いてみよう。
http://karetta.jp/article/blog/oneline/009671
反射させるだけでいいや
import Data.Bits g :: Integer -> [Integer] g n = map (\a -> xor a $ shiftR a 1) $ [0..2^n-1] main = getLine >>= print.g.read >> main
この問題を解いてみよう。
http://karetta.jp/article/blog/oneline/009668
log使うあたりダサすぎ。もっとスマートに書きたい
import Data.Bits f(n+1)=concat $ replicate 2 $ zipWith(((ceiling.logBase 2.fromInteger.(1+)).).xor) [0..2^n][1..2^n] main = getLine >>= print.f.read >> main