結果

問題 No.406 鴨等間隔の法則
ユーザー Naoki_M_
提出日時 2016-08-13 13:15:53
言語 Haskell
(9.10.1)
結果
AC  
実行時間 366 ms / 2,000 ms
コード長 227 bytes
コンパイル時間 1,593 ms
コンパイル使用メモリ 173,568 KB
実行使用メモリ 27,904 KB
最終ジャッジ日時 2024-07-07 11:37:21
合計ジャッジ時間 7,940 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 29
権限があれば一括ダウンロードができます
コンパイルメッセージ
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:3:64: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Data.List, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
  |
3 | main = getContents >>= putStrLn . solve [] . sort . map read . tail . words
  |                                                                ^^^^

Main.hs:5:19: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
  |
5 | solve ls [_] = if head ls /= 0 && all (== head ls) (tail ls) then "YES" else "NO"
  |                   ^^^^

Main.hs:5:43: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
  |
5 | solve ls [_] = if head ls /= 0 && all (== head ls) (tail ls) then "YES" else "NO"
  |                                           ^^^^

Main.hs:5:53: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Data.List, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
  |
5 | solve ls [_] = if head ls /= 0 && all (== head ls) (tail ls) then "YES" else "NO"
  |                                                     ^^^^
[2 of 2] Linking a.out

ソースコード

diff #

import Data.List

main = getContents >>= putStrLn . solve [] . sort . map read . tail . words

solve ls [_] = if head ls /= 0 && all (== head ls) (tail ls) then "YES" else "NO"
solve ls (a0:a1:as) = solve ((a0 - a1):ls) (a1:as)
0