結果

問題 No.188 HAPPY DAY
ユーザー kotarou777775kotarou777775
提出日時 2016-03-04 00:11:05
言語 Haskell
(9.8.2)
結果
AC  
実行時間 2 ms / 1,000 ms
コード長 551 bytes
コンパイル時間 6,271 ms
コンパイル使用メモリ 164,348 KB
実行使用メモリ 6,688 KB
最終ジャッジ日時 2023-08-29 04:47:54
合計ジャッジ時間 7,090 ms
ジャッジサーバーID
(参考情報)
judge12 / judge15
このコードへのチャレンジ(β)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2 ms
6,688 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.6.1/environments/default
[1 of 2] Compiling Main             ( Main.hs, Main.o )
[2 of 2] Linking a.out

ソースコード

diff #

main = do
  putStrLn (show ( solve 1 1))

twosum :: Integer -> Integer
twosum n = (+) ( mod n 10  ) $ div n 10

solve :: Integer -> Integer -> Integer
solve 12 31 = 0
solve m d
  | m == 2 && d == 28 = solve (m+1) 1
  | d == 31 && (m == 1 || m == 3 || m == 5 ||  m == 7 || m == 8 || m == 10) = (solve (m+1) 1) + (if (twosum d) == m then 1 else 0)
  | d == 30 && (m == 4 || m == 6 || m == 9 || m == 11) = (solve (m+1) 1) + (if (twosum d) == m then 1 else 0)
  | d == 31 && m == 12 = 0
  | otherwise = (solve m (d+1)) + (if (twosum d) == m then 1 else 0)
0