QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#190634 | #2828. Algebra | qzez# | AC ✓ | 2086ms | 392112kb | C++14 | 1.7kb | 2023-09-29 09:08:39 | 2023-09-29 09:08:40 |
Judging History
answer
#include<bits/stdc++.h>
#define Gc() getchar()
#define Me(x,y) memset(x,y,sizeof(x))
#define Mc(x,y) memcpy(x,y,sizeof(x))
#define d(x,y) ((m)*(x-1)+(y))
#define R(n) (rnd()%(n)+1)
#define Pc(x) putchar(x)
#define LB lower_bound
#define UB upper_bound
#define fi first
#define se second
using namespace std;using ll=long long;using db=double;using lb=long db;using ui=unsigned;using ull=unsigned long long;using pii=pair<int,int>;using LL=__int128;
const int N=5e5+5,M=N*60+5,K=600+5,mod=998244353,Mod=mod-1;const db eps=1e-9;const int INF=1e9+7;mt19937 rnd(263082);
int n,m,k;
pii A[M],B[M];int w[M];int H,BB;
void Solve(){
int i,j;if(scanf("%d%d%d",&n,&m,&k)==-1) exit(0);
if(n==1) {
if(k^1) {puts("0");return;}
printf("%lld\n",1ll*(2*m+1)*(2*m));
return;
}
H=0;
for(i=1;;i++){
if(i>=2&&n>=30) break;
ll x=1;
if(i^1) for(j=1;j<=n;j++) x*=i;
if(abs(x)>1ll*i*m+m) break;
ll low=max(ceil((-x-m)*1.0/i),-1.0*m),up=min(floor((m-x)*1.0/i),1.0*m);
for(j=low;j<=up;j++) A[++H]=make_pair(j,-x-1ll*i*j);
}
for(i=-1;;i--){
if(i<=-2&&n>=30) break;
ll x=1;
if(i!=-1) for(j=1;j<=n;j++) x*=i;
else x=(n&1?-1:1);
if(abs(x)>=1ll*-i*m+m) break;
ll low=max(ceil((m-x)*1.0/i),-1.0*m),up=min(floor((-x-m)*1.0/i),1.0*m);
for(j=low;j<=up;j++) A[++H]=make_pair(j,-x-1ll*i*j);
}
sort(A+1,A+H+1);BB=0;
for(i=1;i<=H;i++) if(i==1||A[i]!=B[BB]) B[++BB]=A[i],w[BB]=1;else w[BB]++;
int ans=0;
for(i=1;i<=BB;i++) if(w[i]+(B[i].se==0)==k) ans++;
if(k==1){
ans+=2*m+1;
for(i=1;i<=BB;i++) if(B[i].se==0) ans--;
}
printf("%d\n",ans);
}
int main(){
int t=1;
// scanf("%d",&t);
while(1) Solve();
cerr<<clock()*1.0/CLOCKS_PER_SEC<<'\n';
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 7740kb
input:
2 1 1 2 2 2 3 3 3
output:
1 7 1
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 45ms
memory: 7648kb
input:
1 1 1 1 2 1 1 3 1 1 4 1 1 5 1 1 6 1 1 7 1 1 8 1 1 9 1 1 10 1 1 11 1 1 12 1 1 13 1 1 14 1 1 15 1 1 16 1 1 17 1 1 18 1 1 19 1 1 20 1 1 21 1 1 22 1 1 23 1 1 24 1 1 25 1 1 26 1 1 27 1 1 28 1 1 29 1 1 30 1 1 31 1 1 32 1 1 33 1 1 34 1 1 35 1 1 36 1 1 37 1 1 38 1 1 39 1 1 40 1 1 41 1 1 42 1 1 43 1 1 44 1 1...
output:
6 20 42 72 110 156 210 272 342 420 506 600 702 812 930 1056 1190 1332 1482 1640 1806 1980 2162 2352 2550 2756 2970 3192 3422 3660 3906 4160 4422 4692 4970 5256 5550 5852 6162 6480 6806 7140 7482 7832 8190 8556 8930 9312 9702 10100 10506 10920 11342 11772 12210 12656 13110 13572 14042 14520 15006 155...
result:
ok 9801 lines
Test #3:
score: 0
Accepted
time: 41ms
memory: 7668kb
input:
1 1 2 1 2 2 1 3 2 1 4 2 1 5 2 1 6 2 1 7 2 1 8 2 1 9 2 1 10 2 1 11 2 1 12 2 1 13 2 1 14 2 1 15 2 1 16 2 1 17 2 1 18 2 1 19 2 1 20 2 1 21 2 1 22 2 1 23 2 1 24 2 1 25 2 1 26 2 1 27 2 1 28 2 1 29 2 1 30 2 1 31 2 1 32 2 1 33 2 1 34 2 1 35 2 1 36 2 1 37 2 1 38 2 1 39 2 1 40 2 1 41 2 1 42 2 1 43 2 1 44 2 1...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 13 20 26 36 42 52 59 69 75 89 95 105 115 126 132 146 152 166 176 186 192 210 217 227 237 251 257 2...
result:
ok 9801 lines
Test #4:
score: 0
Accepted
time: 45ms
memory: 7884kb
input:
1 1 3 1 2 3 1 3 3 1 4 3 1 5 3 1 6 3 1 7 3 1 8 3 1 9 3 1 10 3 1 11 3 1 12 3 1 13 3 1 14 3 1 15 3 1 16 3 1 17 3 1 18 3 1 19 3 1 20 3 1 21 3 1 22 3 1 23 3 1 24 3 1 25 3 1 26 3 1 27 3 1 28 3 1 29 3 1 30 3 1 31 3 1 32 3 1 33 3 1 34 3 1 35 3 1 36 3 1 37 3 1 38 3 1 39 3 1 40 3 1 41 3 1 42 3 1 43 3 1 44 3 1...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 9801 lines
Test #5:
score: 0
Accepted
time: 34ms
memory: 7724kb
input:
1 1 4 1 2 4 1 3 4 1 4 4 1 5 4 1 6 4 1 7 4 1 8 4 1 9 4 1 10 4 1 11 4 1 12 4 1 13 4 1 14 4 1 15 4 1 16 4 1 17 4 1 18 4 1 19 4 1 20 4 1 21 4 1 22 4 1 23 4 1 24 4 1 25 4 1 26 4 1 27 4 1 28 4 1 29 4 1 30 4 1 31 4 1 32 4 1 33 4 1 34 4 1 35 4 1 36 4 1 37 4 1 38 4 1 39 4 1 40 4 1 41 4 1 42 4 1 43 4 1 44 4 1...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 9801 lines
Test #6:
score: 0
Accepted
time: 45ms
memory: 7888kb
input:
1 1 100 1 2 100 1 3 100 1 4 100 1 5 100 1 6 100 1 7 100 1 8 100 1 9 100 1 10 100 1 11 100 1 12 100 1 13 100 1 14 100 1 15 100 1 16 100 1 17 100 1 18 100 1 19 100 1 20 100 1 21 100 1 22 100 1 23 100 1 24 100 1 25 100 1 26 100 1 27 100 1 28 100 1 29 100 1 30 100 1 31 100 1 32 100 1 33 100 1 34 100 1 3...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 9801 lines
Test #7:
score: 0
Accepted
time: 45ms
memory: 7900kb
input:
1 1 500000 1 2 500000 1 3 500000 1 4 500000 1 5 500000 1 6 500000 1 7 500000 1 8 500000 1 9 500000 1 10 500000 1 11 500000 1 12 500000 1 13 500000 1 14 500000 1 15 500000 1 16 500000 1 17 500000 1 18 500000 1 19 500000 1 20 500000 1 21 500000 1 22 500000 1 23 500000 1 24 500000 1 25 500000 1 26 5000...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 9801 lines
Test #8:
score: 0
Accepted
time: 76ms
memory: 7916kb
input:
578 237 1 713 995 1 335 454 1 640 374 1 718 942 1 924 478 1 783 694 1 530 793 1 368 502 1 829 291 1 26 32 1 335 212 1 668 98 1 856 793 1 195 958 1 748 337 1 636 73 1 771 608 1 290 152 1 536 945 1 406 436 1 240 85 1 673 849 1 178 951 1 595 462 1 285 105 1 972 369 1 575 295 1 484 149 1 860 903 1 641 1...
output:
1417 5968 2722 2239 5647 2863 4162 4753 3007 1744 187 1270 583 4753 5746 2017 433 3646 907 5665 2611 505 5092 5701 2770 628 2209 1768 889 5413 874 4807 1144 4045 355 439 5764 2269 5665 4576 979 4591 5287 1090 5419 4885 4237 1216 3121 4204 559 3904 3526 2368 2515 3424 3868 3691 4621 196 5176 4579 178...
result:
ok 996 lines
Test #9:
score: 0
Accepted
time: 73ms
memory: 7780kb
input:
203 885 2 132 672 2 671 241 2 919 476 2 961 866 2 557 937 2 517 834 2 883 978 2 367 370 2 298 167 2 554 463 2 666 921 2 416 249 2 414 587 2 426 517 2 605 207 2 115 766 2 495 375 2 755 573 2 336 884 2 936 419 2 968 412 2 14 553 2 284 785 2 219 558 2 746 307 2 100 715 2 782 61 2 106 525 2 87 731 2 830...
output:
0 3 0 0 0 0 0 0 0 3 3 3 3 3 3 0 0 0 0 3 3 3 3 3 0 3 3 3 3 0 3 0 0 3 0 0 3 3 0 3 3 0 3 0 3 0 0 0 0 0 0 3 3 0 0 0 3 3 3 0 3 3 0 0 3 0 3 0 3 3 0 0 3 3 0 3 3 3 3 0 0 0 3 3 3 3 0 3 0 3 0 3 3 3 3 3 0 3 3 0 0 0 0 3 3 0 3 0 3 0 0 0 3 0 3 0 0 0 3 0 3 3 0 0 0 0 3 3 0 0 0 0 3 3 3 3 0 0 3 0 0 0 10 0 3 0 0 0 3 0...
result:
ok 994 lines
Test #10:
score: 0
Accepted
time: 78ms
memory: 9804kb
input:
680 533 3 409 269 3 145 902 3 213 221 3 439 870 3 566 834 3 239 974 3 105 163 3 202 676 3 484 604 3 946 689 3 911 988 3 236 836 3 842 943 3 950 200 3 21 77 3 178 380 3 940 61 3 449 869 3 368 305 3 701 964 3 915 738 3 472 739 3 163 137 3 794 93 3 337 991 3 663 63 3 481 390 3 59 901 3 249 433 3 327 15...
output:
0 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 0 0 1 0 1 1 0 1 0 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 0 1 1 1 0 0 0 0 0 1 0 1 1 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 1 0 1 1 0 0 1 0 0 1 1 0 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 ...
result:
ok 988 lines
Test #11:
score: 0
Accepted
time: 161ms
memory: 30880kb
input:
240363 277116 2 97128 25738 2 314633 50385 2 16721 95992 2 140375 28183 2 75271 6448 2 354012 11998 2 20088 3953 2 1095 99 2 33619 45 2 399698 32 2 395408 5 2 86410 6 2
output:
0 3 0 0 0 0 3 3 0 0 3 3 3
result:
ok 13 lines
Test #12:
score: 0
Accepted
time: 168ms
memory: 44164kb
input:
43764 458932 3 475378 11851 3 302405 25039 3 475095 505 3 144912 51 3 166449 351 3 134516 1768 3 349953 807 3 425147 239 3 116238 285 3 373794 99 3 305801 1 3 465817 32 3 167314 4 3 441446 4 3 309241 8 3 462352 8 3 452008 14 3 410841 1 3 195328 1 3
output:
0 0 1 1 0 1 0 1 1 0 0 1 1 0 0 1 0 0 1 0
result:
ok 20 lines
Test #13:
score: 0
Accepted
time: 157ms
memory: 19628kb
input:
208927 82695 10 480469 112188 10 159347 123242 10 209065 63110 10 251159 45081 10 426688 45862 10 27958 18684 10 332091 4883 10 123690 1286 10 287322 575 10 135302 1671 10 308539 450 10 296918 53 10 448480 207 10 334244 2 10 122933 1 10 373597 2 10 329552 2 10 371316 1 10 219194 3 10 117509 1 10 147...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
result:
ok 22 lines
Test #14:
score: 0
Accepted
time: 157ms
memory: 27048kb
input:
21139 219315 5000 486799 146895 5000 11917 27333 5000 437401 104559 5000 336669 954 5000 7873 572 5000 414204 150 5000 436939 105 5000 188387 52 5000 445845 15 5000 316389 32 5000 289763 12 5000 189983 4 5000 414712 1 5000 243662 1 5000
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
result:
ok 15 lines
Test #15:
score: 0
Accepted
time: 131ms
memory: 41920kb
input:
176736 412451 1
output:
2474701
result:
ok single line: '2474701'
Test #16:
score: 0
Accepted
time: 2086ms
memory: 392112kb
input:
2 500000 2
output:
14276189
result:
ok single line: '14276189'
Test #17:
score: 0
Accepted
time: 2029ms
memory: 391608kb
input:
2 499999 3
output:
0
result:
ok single line: '0'
Test #18:
score: 0
Accepted
time: 1008ms
memory: 287988kb
input:
3 500000 2
output:
124
result:
ok single line: '124'
Test #19:
score: 0
Accepted
time: 994ms
memory: 286692kb
input:
3 499999 3
output:
15279
result:
ok single line: '15279'
Test #20:
score: 0
Accepted
time: 697ms
memory: 200612kb
input:
4 500000 2
output:
2538
result:
ok single line: '2538'
Test #21:
score: 0
Accepted
time: 680ms
memory: 203976kb
input:
4 499999 3
output:
0
result:
ok single line: '0'
Test #22:
score: 0
Accepted
time: 171ms
memory: 50056kb
input:
500000 499999 2
output:
3
result:
ok single line: '3'
Test #23:
score: 0
Accepted
time: 169ms
memory: 46764kb
input:
500000 499999 3
output:
0
result:
ok single line: '0'