結果

問題 No.183 たのしい排他的論理和(EASY)
ユーザー はむ吉🐹はむ吉🐹
提出日時 2015-12-30 18:11:56
言語 Haskell
(9.8.2)
結果
CE  
(最新)
AC  
(最初)
実行時間 -
コード長 550 bytes
コンパイル時間 233 ms
コンパイル使用メモリ 147,712 KB
最終ジャッジ日時 2024-04-27 02:16:48
合計ジャッジ時間 619 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.8.2/environments/default
[1 of 2] Compiling Main             ( Main.hs, Main.o )

Main.hs:16:5: error: [GHC-58481]
    parse error (possibly incorrect indentation or mismatched brackets)
   |
16 |     print $ size numbers
   |     ^

ソースコード

diff #

import Control.Applicative ((<$>))
import Control.Monad (forM_, when)
import Control.Monad.State (execState, get, modify)
import Data.Bits (xor)
import Data.Set (fromList, insert, notMember, Set, size)

main :: IO ()
main = do
    _ <- getLine
    switches <- map (read :: String -> Int) . words <$> getLine
    let numbers = (`execState` (fromList [0] :: Set Int)) $ do
        forM_ switches $ \i -> do
            ns <- get
            when (notMember i ns) $ do
                forM_ ns $ \j -> modify $ insert $ xor i j
    print $ size numbers
0