結果

問題 No.316 もっと刺激的なFizzBuzzをください
コンテスト
ユーザー tanson
提出日時 2026-05-28 12:40:58
言語 Standard ML
(MLton 20241230)
コンパイル:
mlton_wrapper _filename_
実行:
./main
結果
AC  
実行時間 1 ms / 1,000 ms
コード長 773 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 5,995 ms
コンパイル使用メモリ 704,488 KB
実行使用メモリ 6,400 KB
最終ジャッジ日時 2026-05-28 12:41:05
合計ジャッジ時間 5,981 ms
ジャッジサーバーID
(参考情報)
judge1_1 / judge2_1
純コード判定待ち
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 33
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

fun readLargeInt () =
    valOf (TextIO.scanStream (LargeInt.scan StringCvt.DEC) TextIO.stdIn)

fun gcd a b =
    if b = 0 then a
    else gcd b (a mod b)

fun lcm a b =
    (a div (gcd a b) * b)

val () =
    let
        val n = readLargeInt ()
        val a = readLargeInt ()
        val b = readLargeInt ()
        val c = readLargeInt ()

        val numOfA = n div a
        val numOfB = n div b
        val numOfC = n div c

        val numOfLcm_ab = n div (lcm a b)
        val numOfLcm_bc = n div (lcm b c)
        val numOfLcm_ca = n div (lcm c a)

        val numOfLcm_abc = n div (lcm (lcm a b) c)

        val ans = numOfA + numOfB + numOfC - (numOfLcm_ab + numOfLcm_bc + numOfLcm_ca) + numOfLcm_abc 
    in
        print (LargeInt.toString ans ^ "\n")
    end
0