結果
問題 | No.519 アイドルユニット |
ユーザー | aimy |
提出日時 | 2017-06-08 10:00:43 |
言語 | Haskell (9.8.2) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 689 bytes |
コンパイル時間 | 1,924 ms |
コンパイル使用メモリ | 149,632 KB |
最終ジャッジ日時 | 2024-11-14 20:03:25 |
合計ジャッジ時間 | 2,372 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、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:1:1: error: [GHC-87110] Could not load module ‘Data.IntMap.Strict’. It is a member of the hidden package ‘containers-0.6.8’. Use -v to see a list of the files searched for. | 1 | import qualified Data.IntMap.Strict as M | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ソースコード
import qualified Data.IntMap.Strict as M import Data.List import Data.Bits mapKeysValue f g = M.fromDistinctAscList . map (\(k,v) -> (f k, g v)) . M.toList main = do n <- readLn let takeFellow = reverse . takeWhile (/=(-1)) . reverse fs <- concat . map (takeFellow . map read . words) . lines <$> getContents print (idolUnit n fs) idolUnit n fs = (snd . M.findMax) (foldl' dp (M.singleton 0 0) units) where units = zip [(bit i, bit j) | i<-[0..n-1], j<-[0..n-1], i<j] fs dp im ((bi,bj),f) = M.filterWithKey (\k _ -> mod k bi == mod (complement 0) bi) $ M.unionWith max im $ mapKeysValue (.|. ab) (+f) im' where ab = bi .|. bj im' = M.filterWithKey (\k _ -> k .&. ab == 0) im