結果
問題 |
No.316 もっと刺激的なFizzBuzzをください
|
ユーザー |
![]() |
提出日時 | 2016-02-24 03:45:35 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 623 bytes |
コンパイル時間 | 459 ms |
コンパイル使用メモリ | 57,748 KB |
実行使用メモリ | 13,888 KB |
最終ジャッジ日時 | 2024-09-22 13:16:52 |
合計ジャッジ時間 | 2,940 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | -- * 4 |
other | AC * 3 WA * 1 TLE * 1 -- * 28 |
ソースコード
#include<iostream> #include<algorithm> using namespace std; long long gcd(long long a,long long b){ if(a<b) return gcd(b,a); if(a%b==0) return b; return gcd(b,a%b); } int main(){ long long N,a,b,c; bool f=false; cin>>N>>a>>b>>c; if(a==1||b==1||c==1){ cout<<N<<endl; return 0; } if(a%b==0||a%c==0){ swap(a,c); f=true; } else if(b%a==0||b%c==0){ swap(b,c); f=true; } else if(c%b==0||c%a==0){ f=true; } if(b>c) swap(b,c); if(a>c) swap(a,c); long long ab=a*b/gcd(a,b); long long tmp=N/a+N/b-N/ab; if(!f){ for(int i=c;i<N;i+=c){ if(i%a!=0&&i%b!=0) tmp++; } } cout<<tmp<<endl; }