結果

問題 No.141 魔法少女コバ
ユーザー OldBrid21501053OldBrid21501053
提出日時 2019-08-28 14:52:51
言語 Haskell
(9.10.1)
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 465 bytes
コンパイル時間 4,115 ms
コンパイル使用メモリ 175,872 KB
実行使用メモリ 6,820 KB
最終ジャッジ日時 2024-11-17 16:23:06
合計ジャッジ時間 23,444 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 91 TLE * 2
権限があれば一括ダウンロードができます
コンパイルメッセージ
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 (unfoldr)

main :: IO ()
main = print =<< solve . map (read :: String -> Int) . words <$> getLine

solve :: [Int] -> Int
solve [m, n] = sum $ unfoldr f (m, n)
f :: (Int, Int) -> Maybe (Int, (Int, Int))
f (a, b)
    | a == 1 && b == 1 = Nothing 
    | (gcd a b) /= 1   = Just (0, (a `div` gcd a b, b `div` gcd a b))
    | b == 1           = Just (a - 1, (1, 1))
    | a > b            = Just (1, (a - b, b))
    | otherwise        = Just (1, (b, a))
0