結果
問題 | No.316 もっと刺激的なFizzBuzzをください |
ユーザー |
|
提出日時 | 2015-12-07 18:21:00 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 1,606 bytes |
コンパイル時間 | 901 ms |
コンパイル使用メモリ | 73,932 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-21 11:12:18 |
合計ジャッジ時間 | 2,042 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 33 |
ソースコード
#include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <queue>#include <map>#include <set>#include <string>#include <algorithm>#include <functional>using namespace std;#define FOR(i,a,b) for (int i=(a);i<(b);i++)#define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--)#define REP(i,n) for (int i=0;i<(n);i++)#define RREP(i,n) for (int i=(n)-1;i>=0;i--)#define INF 1<<30#define ALEN(ARR) (sizeof(ARR) / sizeof((ARR)[0]))#define MP make_pair#define mp make_pair#define pb push_back#define PB push_back#define DEBUG(x) cout<<#x<<": "<<x<<endl#define ll long long#define ull unsigned long long#define MOD 1000000007ll gcd(int a, int b) {if(a < b) swap(a, b);while(b > 0) {int r = a % b;a = b;b = r;}return a;}ll lcm(ll a, ll b) {if(a == 0 || b == 0) {cout << "Error" << endl;return 0;}return (a * b / gcd(a, b));}int counting(int end, int a, int b, int c) {int ret = 0;int N = end;ret += N / a + N / b + N / c;ret -= N / lcm(a, b) + N / lcm(b, c) + N / lcm(c, a);ret += N / lcm(a, lcm(b, c));/*DEBUG(lcm(a, b));DEBUG(lcm(b, c));DEBUG(lcm(c, a));DEBUG(lcm(a, lcm(b, c)));*/return ret;}int main(){cin.tie(0);ios::sync_with_stdio(false);cout.precision(16);int end;int a, b, c;cin >> end >> a >> b >> c;cout << counting(end, a, b, c) << endl;/*cout << counting(100, 2, 3, 5) << endl;cout << counting(100, 2, 5, 6) << endl;cout << counting(346346, 25, 575, 2525) << endl;*/return 0;}