結果
問題 | No.854 公平なりんご分配 |
ユーザー | DAyamaCTF |
提出日時 | 2019-07-27 08:27:23 |
言語 | C++11 (gcc 11.4.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 2,013 bytes |
コンパイル時間 | 1,341 ms |
コンパイル使用メモリ | 163,472 KB |
実行使用メモリ | 126,336 KB |
最終ジャッジ日時 | 2024-07-02 10:46:05 |
合計ジャッジ時間 | 19,767 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 3 ms
5,760 KB |
testcase_01 | AC | 3 ms
5,888 KB |
testcase_02 | AC | 3 ms
5,760 KB |
testcase_03 | AC | 3 ms
5,888 KB |
testcase_04 | AC | 3 ms
5,888 KB |
testcase_05 | AC | 3 ms
5,888 KB |
testcase_06 | AC | 3 ms
5,760 KB |
testcase_07 | AC | 3 ms
5,888 KB |
testcase_08 | AC | 3 ms
5,888 KB |
testcase_09 | AC | 3 ms
5,760 KB |
testcase_10 | AC | 3 ms
5,760 KB |
testcase_11 | AC | 3 ms
5,632 KB |
testcase_12 | AC | 4 ms
5,888 KB |
testcase_13 | AC | 3 ms
5,760 KB |
testcase_14 | AC | 3 ms
5,760 KB |
testcase_15 | AC | 3 ms
5,760 KB |
testcase_16 | AC | 3 ms
5,760 KB |
testcase_17 | AC | 4 ms
6,016 KB |
testcase_18 | AC | 3 ms
5,888 KB |
testcase_19 | AC | 4 ms
5,888 KB |
testcase_20 | AC | 4 ms
5,888 KB |
testcase_21 | AC | 4 ms
5,760 KB |
testcase_22 | AC | 7 ms
6,016 KB |
testcase_23 | AC | 7 ms
6,144 KB |
testcase_24 | AC | 10 ms
6,656 KB |
testcase_25 | AC | 6 ms
6,144 KB |
testcase_26 | AC | 9 ms
6,784 KB |
testcase_27 | AC | 8 ms
6,656 KB |
testcase_28 | AC | 6 ms
6,016 KB |
testcase_29 | AC | 5 ms
5,888 KB |
testcase_30 | AC | 6 ms
6,144 KB |
testcase_31 | AC | 10 ms
6,656 KB |
testcase_32 | AC | 98 ms
30,976 KB |
testcase_33 | AC | 86 ms
19,072 KB |
testcase_34 | AC | 172 ms
40,832 KB |
testcase_35 | AC | 127 ms
33,152 KB |
testcase_36 | AC | 61 ms
7,040 KB |
testcase_37 | AC | 92 ms
29,380 KB |
testcase_38 | AC | 75 ms
24,960 KB |
testcase_39 | AC | 241 ms
42,880 KB |
testcase_40 | AC | 95 ms
17,280 KB |
testcase_41 | AC | 119 ms
27,776 KB |
testcase_42 | AC | 160 ms
40,064 KB |
testcase_43 | AC | 168 ms
28,800 KB |
testcase_44 | AC | 180 ms
37,632 KB |
testcase_45 | AC | 143 ms
11,776 KB |
testcase_46 | AC | 223 ms
36,992 KB |
testcase_47 | AC | 89 ms
22,988 KB |
testcase_48 | AC | 148 ms
39,680 KB |
testcase_49 | AC | 142 ms
40,448 KB |
testcase_50 | AC | 86 ms
29,312 KB |
testcase_51 | AC | 225 ms
38,656 KB |
testcase_52 | WA | - |
testcase_53 | WA | - |
testcase_54 | WA | - |
testcase_55 | WA | - |
testcase_56 | WA | - |
testcase_57 | WA | - |
testcase_58 | WA | - |
testcase_59 | WA | - |
testcase_60 | WA | - |
testcase_61 | WA | - |
testcase_62 | WA | - |
testcase_63 | WA | - |
testcase_64 | WA | - |
testcase_65 | WA | - |
testcase_66 | WA | - |
testcase_67 | WA | - |
testcase_68 | WA | - |
testcase_69 | WA | - |
testcase_70 | WA | - |
testcase_71 | WA | - |
testcase_72 | WA | - |
testcase_73 | WA | - |
testcase_74 | WA | - |
testcase_75 | WA | - |
testcase_76 | WA | - |
testcase_77 | WA | - |
testcase_78 | WA | - |
testcase_79 | WA | - |
testcase_80 | WA | - |
testcase_81 | WA | - |
testcase_82 | WA | - |
testcase_83 | AC | 725 ms
126,336 KB |
testcase_84 | AC | 723 ms
126,208 KB |
testcase_85 | AC | 745 ms
126,336 KB |
testcase_86 | AC | 593 ms
126,276 KB |
testcase_87 | WA | - |
testcase_88 | WA | - |
testcase_89 | WA | - |
testcase_90 | WA | - |
testcase_91 | WA | - |
testcase_92 | AC | 805 ms
126,336 KB |
testcase_93 | AC | 809 ms
126,120 KB |
ソースコード
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair<ll, ll> P; #define fi first #define se second #define repl(i,a,b) for(ll i=(ll)(a);i<(ll)(b);i++) #define rep(i,n) repl(i,0,n) #define all(x) (x).begin(),(x).end() #define dbg(x) cout<<#x"="<<x<<endl #define mmax(x,y) (x>y?x:y) #define mmin(x,y) (x<y?x:y) #define maxch(x,y) x=mmax(x,y) #define minch(x,y) x=mmin(x,y) #define uni(x) x.erase(unique(all(x)),x.end()) #define exist(x,y) (find(all(x),y)!=x.end()) #define bcnt __builtin_popcountll #define INF 1e16 #define mod 1000000007 vector<int> operator+(const vector<int>& a,const vector<int>& b){ vector<int> res(a.size(),0); rep(i,a.size())res[i]=a[i]+b[i]; return res; } vector<int> operator-(const vector<int>& a,const vector<int>& b){ vector<int> res(a.size(),0); rep(i,a.size())res[i]=a[i]-b[i]; return res; } bool isprime[2001]; vector<int> ps; int M; vector<int> calcvec(int X){ if(X==0) return vector<int>(M,0); vector<int> res(M,0); rep(i,ps.size()){ while(X%ps[i]==0){ res[i]++; X/=ps[i]; } } if(X!=1) return vector<int>(1,-1); return res; } int N,Q; vector<int> sum[100010]; int zsum[100010]; int main(){ cin.tie(0); ios::sync_with_stdio(false); repl(i,2,2001)isprime[i]=true; for(ll i=2;i<=2000;i++){ if(isprime[i]){ ps.push_back(i); for(ll j=i*2;j<=2000;j+=i)isprime[j]=false; } } M=ps.size(); sum[0]=vector<int>(M,0); cin>>N; rep(i,N){ int A; cin>>A; if(A==0){ zsum[i+1]=zsum[i]+1; }else{ zsum[i+1]=zsum[i]; } vector<int> B=calcvec(A); sum[i+1]=sum[i]+B; } cin>>Q; rep(i,Q){ int P,L,R; cin>>P>>L>>R; L--; vector<int> tmp=sum[R]-sum[L]; vector<int> p=calcvec(P); if(p[0]==-1){ cout<<"NO"<<endl; continue; } bool ok=true; rep(j,M)if(tmp[j]<p[j])ok=false; if(ok||zsum[R]-zsum[L]) cout<<"Yes"<<endl; else cout<<"NO"<<endl; } return 0; }