結果

問題 No.316 もっと刺激的なFizzBuzzをください
ユーザー qaz
提出日時 2017-05-20 13:42:18
言語 C#(csc)
(csc 3.9.0)
結果
AC  
実行時間 23 ms / 1,000 ms
コード長 894 bytes
コンパイル時間 890 ms
コンパイル使用メモリ 102,784 KB
実行使用メモリ 17,920 KB
最終ジャッジ日時 2024-09-19 00:27:12
合計ジャッジ時間 2,293 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 33
権限があれば一括ダウンロードができます
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #

using System;
using System.Collections.Generic;
using System.Linq;

public class Program
{
    public static void Main() {
        int N = int.Parse(Console.ReadLine());

        var s = Console.ReadLine().Split(' ');
        int a = int.Parse(s[0]);
        int b = int.Parse(s[1]);
        int c = int.Parse(s[2]);

        long ab = Lcm(a, b);
        long bc = Lcm(b, c);
        long ca = Lcm(c, a);
        long abc = Lcm(Lcm(a, b), c);

        int count = (int)(N / a + N / b + N / c - N / ab - N / bc - N / ca + N / abc);

        Console.WriteLine(count);
    }

    public static long Lcm(long a, long b) {
        return a * b / Gcd(a, b);
    }

    public static long Gcd(long a, long b) {
        if (a < b)
            return Gcd(b, a);
        while (b != 0) {
            var remainder = a % b;
            a = b;
            b = remainder;
        }
        return a;
    }
}
0