結果

問題 No.116 門松列(1)
ユーザー はむ吉🐹
提出日時 2015-10-25 11:38:45
言語 Haskell
(9.10.1)
結果
AC  
実行時間 3 ms / 5,000 ms
コード長 537 bytes
コンパイル時間 8,227 ms
コンパイル使用メモリ 173,568 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-06-25 01:11:21
合計ジャッジ時間 2,770 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21
権限があれば一括ダウンロードができます
コンパイルメッセージ
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

ソースコード

diff #

import Data.List (sort)

isKadomatsu :: [Int] -> Bool
isKadomatsu (a : b : c : _) = (q == a || q == c) && a /= b && b /= c && c /= a
    where [p, q, r] = sort [a, b, c]

adjacentElements :: Int -> [a] -> [[a]]
adjacentElements = adjacentElements' []
    where
        adjacentElements' ys n xs@(_ : xr)
            | length xs >= n = adjacentElements' (ys ++ [take n xs]) n xr
            | otherwise      = ys

main :: IO ()
main = getLine >> getLine >>= print . length .
    filter isKadomatsu . adjacentElements 3 . map read . words
0