結果

問題 No.316 もっと刺激的なFizzBuzzをください
ユーザー CELICA
提出日時 2020-09-20 22:00:01
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 3 ms / 1,000 ms
コード長 608 bytes
コンパイル時間 1,460 ms
コンパイル使用メモリ 166,452 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-24 11:00:09
合計ジャッジ時間 2,768 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 33
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>

using namespace std;

using ll = long long;
using ul = unsigned long;
using ull = unsigned long long;

const string TARGET_NO = "0316";

template <class T>
T gcd(T a, T b)
{
	return b == 0 ? a : gcd(b, a % b);
}

template <class T>
T lcm(T a, T b)
{
	T g = gcd(a, b);

	return a * b / g;
}

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	ll n,a,b,c;
	cin >> n >> a >> b >> c;

	ll lab = lcm(a, b),
		lac = lcm(a, c),
		lbc = lcm(b, c),
		l = lcm(lab, c);

	ll res = n / a + n / b + n / c
		- n / lab - n / lac - n / lbc + n / l;

	cout << res << "\n";

	return 0;
}
0