結果

問題 No.120 傾向と対策:門松列(その1)
コンテスト
ユーザー aimy
提出日時 2017-05-01 08:22:22
言語 Haskell
(9.14.1)
コンパイル:
ghc -rtsopts -with-rtsopts=-K1G -o a.out -O2 _filename_
実行:
./a.out
結果
AC  
実行時間 210 ms / 5,000 ms
コード長 388 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 12,231 ms
コンパイル使用メモリ 196,224 KB
実行使用メモリ 10,112 KB
最終ジャッジ日時 2026-04-04 09:23:27
合計ジャッジ時間 10,938 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 4
権限があれば一括ダウンロードができます
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.14.1/environments/default
[1 of 2] Compiling Main             ( Main.hs, Main.o )
[2 of 2] Linking a.out

ソースコード

diff #
raw source code

import Control.Monad
import Data.Ord
import Data.List

main = do
 t <- readLn
 replicateM_ t $ do
  getLine
  ls <- map read . words <$> getLine :: IO [Integer]
  print (kadomatsu ls)

kadomatsu = length . unfoldr take3 . sort' . group . sort
 where
  sort' = sortBy (flip (comparing length)) 
  take3 ((_:ls1):(_:ls2):(_:ls3):lss) = Just ((), sort' (ls1:ls2:ls3:lss))
  take3 _ = Nothing
0