結果

問題 No.316 もっと刺激的なFizzBuzzをください
ユーザー syoken_desukasyoken_desuka
提出日時 2016-01-07 17:11:04
言語 C++11
(gcc 11.4.0)
結果
AC  
実行時間 2 ms / 1,000 ms
コード長 2,096 bytes
コンパイル時間 1,079 ms
コンパイル使用メモリ 160,076 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-05-01 09:02:10
合計ジャッジ時間 1,972 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2 ms
5,248 KB
testcase_01 AC 1 ms
5,376 KB
testcase_02 AC 1 ms
5,376 KB
testcase_03 AC 1 ms
5,376 KB
testcase_04 AC 1 ms
5,376 KB
testcase_05 AC 1 ms
5,376 KB
testcase_06 AC 1 ms
5,376 KB
testcase_07 AC 1 ms
5,376 KB
testcase_08 AC 1 ms
5,376 KB
testcase_09 AC 1 ms
5,376 KB
testcase_10 AC 1 ms
5,376 KB
testcase_11 AC 1 ms
5,376 KB
testcase_12 AC 2 ms
5,376 KB
testcase_13 AC 1 ms
5,376 KB
testcase_14 AC 1 ms
5,376 KB
testcase_15 AC 1 ms
5,376 KB
testcase_16 AC 2 ms
5,376 KB
testcase_17 AC 2 ms
5,376 KB
testcase_18 AC 2 ms
5,376 KB
testcase_19 AC 1 ms
5,376 KB
testcase_20 AC 2 ms
5,376 KB
testcase_21 AC 1 ms
5,376 KB
testcase_22 AC 1 ms
5,376 KB
testcase_23 AC 1 ms
5,376 KB
testcase_24 AC 1 ms
5,376 KB
testcase_25 AC 1 ms
5,376 KB
testcase_26 AC 1 ms
5,376 KB
testcase_27 AC 1 ms
5,376 KB
testcase_28 AC 1 ms
5,376 KB
testcase_29 AC 1 ms
5,376 KB
testcase_30 AC 1 ms
5,376 KB
testcase_31 AC 1 ms
5,376 KB
testcase_32 AC 1 ms
5,376 KB
testcase_33 AC 1 ms
5,376 KB
testcase_34 AC 1 ms
5,376 KB
testcase_35 AC 1 ms
5,376 KB
testcase_36 AC 1 ms
5,376 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include "bits/stdc++.h"
using namespace std;
//諸機能
#pragma region MACRO
#define putans(x) cerr << "answer: "; cout << (x) << endl
#define dputans(x) cerr << "answer: "; cout << setprecision(10) << (x) << endl
#define REP(i, a, n) for (int i = ( a ); i<(int)( n ); i++)
#define RREP(i, a, n) for (int i = (int)( n ); i >= a; i--)
#define rep(i, n) REP(i, 0, n)
#define rrep(i, n) RREP(i, 0, n)
#define ALLOF(a) begin((a)),end((a))
#define FILL(a,n) for(auto &hoge : (a)) hoge = (n)
#define mp(a,b) (make_pair(a,b))
#define exist(container, n) ((container).find((n)) != (container).end())
#define SUBSTR(s,i,l) string((s), (i), (l))
#define NPI_TO_RAD(x) (180.0*x/PI)
#define RAD_TO_NPI(x) (PI/180.0*x)
#pragma endregion
//デバッグなどの支援
#pragma region CODING_SUPPORT
#define dg(var0) { std::cerr << (#var0) << "=" << (var0) << endl; }
#define dgg(var0, var1) { std::cerr << (#var0) << "=" << (var0) << ", ";dg(var1); }
#define dggg(var0, var1, var2) { std::cerr << (#var0) << "=" << (var0) << ", ";dgg(var1,var2); }
#define dgggg(var0, var1, var2, var3) { std::cerr << (#var0) << "=" << (var0) << ", ";dggg(var1,var2,var3); }
#pragma endregion
//typedef(書き換える、書き足す可能性ある)
#pragma region TYPE_DEF
typedef long long ll;
typedef pair<int, int> pii;
typedef pair<string, string> pss;
typedef pair<int, string>pis;
typedef pair<string, int>psi;
typedef vector<string> vs;
typedef vector<int> vi;
#pragma endregion
//諸々の定数(書き換える可能性ある)
#pragma region CONST_VAL
#define PI (2*acos(0.0))
#define EPS (1e-9)
#define MOD (1e9 + 7)
#pragma endregion

int gcd(int a, int b)
{
	if (b == 0) return a;
	else return gcd(b, a % b);
}

int main()
{
	ll n; cin >> n;
	ll a, b, c; cin >> a >> b >> c;
	ll i, j, k, ij, jk, ki, ijk;
	ll ab, bc, ca, abc; // saisyo kobaisu
	i = n / a;
	j = n / b;
	k = n / c;
	ab = a*b / gcd(a, b);
	bc = b*c / gcd(b, c);
	ca = c*a / gcd(c, a);
	abc = ab*c / gcd(ab, c);

	ij = n / ab;
	jk = n / bc;
	ki = n / ca;
	ijk = n / abc;
	int ans = i + j + k - ( ij + jk + ki ) + ijk;
	putans(ans);
	return 0;
}

0