結果
問題 | No.607 開通777年記念 |
ユーザー |
|
提出日時 | 2019-03-24 14:46:52 |
言語 | Haskell (9.10.1) |
結果 |
AC
|
実行時間 | 96 ms / 2,000 ms |
コード長 | 868 bytes |
コンパイル時間 | 3,542 ms |
コンパイル使用メモリ | 182,512 KB |
実行使用メモリ | 15,616 KB |
最終ジャッジ日時 | 2024-10-02 07:59:41 |
合計ジャッジ時間 | 4,793 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 10 |
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.8.2/environments/default [1 of 2] Compiling Main ( Main.hs, Main.o ) [2 of 2] Linking a.out
ソースコード
importControl.MonadreplicateMimportData.MaybefromJustimportqualifiedData.ByteString.CharasBimportData.Array.UnboxedUArray,(!),listArrayimportData.Array.UnboxedasUArrayrInt::BByteString->IntrInt = fst . fromJust . B.readIntf777::Int->UArrayIntInt->Boolf777 n xs = f 0 0 0 wheref l r s| l == n = False| s == 777 = True| r == n = f (l + 1) r (s - (xs ! l))| s < 777 = f l (r + 1) (s + (xs ! r))| otherwise = f (l + 1) r (s - (xs ! l))solve::Int->Int->Stringsolve n as = if any (f777 n) as' then "YES" else "NO" whereze = replicate n 0as' = map (listArray (0, n - 1)) $ scanl (zipWith (+)) ze as{--}main = do[n, m] <- map rInt . B.words <$> B.getLineas <- map (map rInt . B.words) <$> replicateM m B.getLineputStrLn $ solve n as