結果

問題 No.721 Die tertia (ディエ・テルツィア)
コンテスト
ユーザー tanson
提出日時 2025-11-13 01:13:16
言語 Standard ML
(MLton 20210117)
結果
RE  
実行時間 -
コード長 1,144 bytes
コンパイル時間 3,385 ms
コンパイル使用メモリ 689,528 KB
実行使用メモリ 7,720 KB
最終ジャッジ日時 2025-11-13 01:13:23
合計ジャッジ時間 4,601 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 2 RE * 16
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

fun readInt () =
    valOf (TextIO.scanStream (Int.scan StringCvt.DEC) TextIO.stdIn)

exception WrongMonth
fun intToMonth 1 = Date.Jan
  | intToMonth 2 = Date.Feb
  | intToMonth 3 = Date.Mar
  | intToMonth 4 = Date.Apr
  | intToMonth 5 = Date.May
  | intToMonth 6 = Date.Jun
  | intToMonth 7 = Date.Jul
  | intToMonth 8 = Date.Aug
  | intToMonth 9 = Date.Sep
  | intToMonth 10 = Date.Oct
  | intToMonth 11 = Date.Nov
  | intToMonth 12 = Date.Dec
  | intToMonth _ = raise WrongMonth

fun readDate () =
    let
        val y = readInt ()
        val _ = TextIO.scanStream Char.scan TextIO.stdIn (* skip #"/" *)
        val m = readInt ()
        val _ = TextIO.scanStream Char.scan TextIO.stdIn (* skip #"/" *)
        val d = readInt ()
    in
        (y, m, d)
    end


val () =
    let
        val (y, m, d) = readDate ()
        val currentDate = Date.date {year = y, month = intToMonth m, day = d, hour = 0, minute = 0, second = 0, offset = SOME(Time.zeroTime)}

        val ans = Date.fromTimeUniv (op Time.+ (Date.toTime currentDate, Time.fromSeconds (60 * 60 * 24 * 2)))
    in
        print ((Date.fmt "%Y/%m/%d" ans) ^ "\n")  
    end
0