QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#934400 | #9689. 伪伪随机 | csyakuoi | 64.908063 | 168ms | 35276kb | C++14 | 1.7kb | 2025-03-14 18:51:31 | 2025-03-14 18:51:31 |
Judging History
answer
#include"prg.h"
#include<vector>
#include<cmath>
#include<ctime>
#include<cstdlib>
using namespace std;
double solve(int n,int m,double p)
{
double a=1,b=1,c=1,d=1;
for(int i=0;i<m;i++){
a*=p; c*=1-p;
}
for(int i=0;i<n-m;i++){
b*=1-p; d*=p;
}
return log2(a*b+c*d);
}
vector<int> to[1000],id[1000];
vector<int> ed[1000][1000];
int solve(int n,int m,int k,vector<int> op,array<vector<int>,3000> arr,int T,array<array<int,3000>,25> res)
{
if(op[k-2]!=2){
int cnt=0;
for(int i=0;i<T;i++)
for(int j=0;j<m;j++)
cnt+=res[i][j];
if(cnt<35000||cnt>40000)
return 2;
return 1;
}
for(int i=0;i<n;i++)
id[i].clear();
if(k<4||op[1]!=2){
double p1=0.5,p2=0.75;
if(k==4&&op[0]!=2&&op[1]!=2){
if(op[1]==op[2]) p2=0.875;
else p2=0.625;
}
double E1=0.0,E2=0.0;
for(int i=0;i<m;i++)
id[arr[i][k-1]].push_back(i);
for(int i=0;i<n;i++)
for(int t=0;t<T;t++){
int p=id[i].size(),cnt=0;
for(int j=0;j<p;j++)
cnt+=res[t][id[i][j]];
E1+=solve(p,cnt,p1);
E2+=solve(p,cnt,p2);
}
if(E2>E1) return 2;
return 1;
}
double E1=0.0,E2=0.0;
for(int i=0;i<n;i++){
to[i].clear();
for(int j=i+1;j<n;j++)
ed[i][j].clear();
}
for(int i=0;i<m;i++){
int a=arr[i][2],b=arr[i][3];
to[a].push_back(b);
to[b].push_back(a);
id[a].push_back(i);
id[b].push_back(i);
if(a>b) swap(a,b);
ed[a][b].push_back(i);
}
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++)
if(ed[i][j].size()>=2){
int c0=ed[i][j][0],c1=ed[i][j][1];
for(int t=0;t<T;t++){
E2+=log2(0.5);
if(res[t][c0]==res[t][c1]) E1+=log2(0.625);
else E1+=log2(0.375);
}
}
if(E1>E2) return 2;
return 1;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 5
Accepted
Test #1:
score: 5
Accepted
time: 39ms
memory: 28040kb
input:
15478345200793503450 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #2:
score: 5
Accepted
time: 41ms
memory: 27836kb
input:
8777328773999050296 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #3:
score: 5
Accepted
time: 41ms
memory: 28024kb
input:
8306860370301473558 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #4:
score: 5
Accepted
time: 41ms
memory: 27924kb
input:
7355535262167792602 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #5:
score: 5
Accepted
time: 41ms
memory: 27972kb
input:
5901033176077457090 1237460 18364524 21312413
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #6:
score: 5
Accepted
time: 40ms
memory: 28024kb
input:
6725216784977925179 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #7:
score: 5
Accepted
time: 38ms
memory: 27984kb
input:
15228205213107479514 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #8:
score: 5
Accepted
time: 40ms
memory: 27956kb
input:
10794704323727532585 1237460 18364524 21312413
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #9:
score: 5
Accepted
time: 40ms
memory: 27904kb
input:
1531863096801291235 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #10:
score: 5
Accepted
time: 38ms
memory: 28032kb
input:
12583269177593428071 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #11:
score: 5
Accepted
time: 41ms
memory: 28044kb
input:
17884260014537450829 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #12:
score: 5
Accepted
time: 40ms
memory: 27956kb
input:
5598933293992250528 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #13:
score: 5
Accepted
time: 43ms
memory: 28008kb
input:
15029988260575536839 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #14:
score: 5
Accepted
time: 41ms
memory: 27840kb
input:
18435900855108017468 1237460 18364524 21312413
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #15:
score: 5
Accepted
time: 40ms
memory: 27976kb
input:
4740054765891404200 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #16:
score: 5
Accepted
time: 39ms
memory: 28024kb
input:
14854659461851577578 1237460 18364524 21312413
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #17:
score: 5
Accepted
time: 39ms
memory: 27972kb
input:
11860421814773748892 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #18:
score: 5
Accepted
time: 38ms
memory: 27936kb
input:
2618043996784533224 1237460 18364524 21312413
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #19:
score: 5
Accepted
time: 39ms
memory: 27900kb
input:
4729099511370153840 1237460 18364524 21312414
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #20:
score: 5
Accepted
time: 40ms
memory: 27948kb
input:
6142100148239098773 1237460 18364524 21312413
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Subtask #2:
score: 15
Accepted
Test #21:
score: 15
Accepted
time: 100ms
memory: 28204kb
input:
15644456504653888385 1237461 18364524 21312413 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #22:
score: 15
Accepted
time: 101ms
memory: 28260kb
input:
17525409403797767860 1237461 18364524 21312413 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #23:
score: 15
Accepted
time: 101ms
memory: 28356kb
input:
16953002163903257386 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #24:
score: 15
Accepted
time: 100ms
memory: 28304kb
input:
788278265436010907 1237461 18364524 21312413 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #25:
score: 15
Accepted
time: 97ms
memory: 28368kb
input:
15540481379750277983 1237461 18364524 21312413 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #26:
score: 15
Accepted
time: 101ms
memory: 28156kb
input:
9015247799051510708 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #27:
score: 15
Accepted
time: 98ms
memory: 28256kb
input:
14718463813137865720 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #28:
score: 15
Accepted
time: 44ms
memory: 27904kb
input:
9626039215908894536 1237461 18364524 21312415 32673239
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #29:
score: 15
Accepted
time: 43ms
memory: 28036kb
input:
15367994199069034681 1237461 18364524 21312414 32673236
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #30:
score: 15
Accepted
time: 100ms
memory: 28240kb
input:
9815994743565449906 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #31:
score: 15
Accepted
time: 102ms
memory: 28312kb
input:
5076972403022378194 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #32:
score: 15
Accepted
time: 98ms
memory: 28216kb
input:
13523311479884920883 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #33:
score: 15
Accepted
time: 102ms
memory: 28340kb
input:
15452059373617333584 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #34:
score: 15
Accepted
time: 101ms
memory: 28344kb
input:
8631381148034308695 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #35:
score: 15
Accepted
time: 98ms
memory: 28388kb
input:
5422315179829169150 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #36:
score: 15
Accepted
time: 100ms
memory: 28140kb
input:
4361249126136426961 1237461 18364524 21312413 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #37:
score: 15
Accepted
time: 110ms
memory: 28292kb
input:
6976800422460576686 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #38:
score: 15
Accepted
time: 101ms
memory: 28192kb
input:
8552184079474065172 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #39:
score: 15
Accepted
time: 100ms
memory: 28332kb
input:
1598183902825082255 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #40:
score: 15
Accepted
time: 101ms
memory: 28380kb
input:
3317147437384062467 1237461 18364524 21312414 32673238
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Subtask #3:
score: 30
Accepted
Test #41:
score: 30
Accepted
time: 70ms
memory: 28968kb
input:
18096446825184275106 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #42:
score: 30
Accepted
time: 64ms
memory: 28692kb
input:
14902425508262229602 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #43:
score: 30
Accepted
time: 74ms
memory: 29128kb
input:
15139748546799860644 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #44:
score: 30
Accepted
time: 73ms
memory: 29124kb
input:
9307674455823252809 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #45:
score: 30
Accepted
time: 73ms
memory: 29056kb
input:
3661511870465233329 1237458 18364525
output:
126534126
result:
ok Perfect. Correct in 99 tests.
Test #46:
score: 30
Accepted
time: 66ms
memory: 28976kb
input:
9635149641212141231 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #47:
score: 30
Accepted
time: 70ms
memory: 29012kb
input:
8623126583531512280 1237458 18364525
output:
126534126
result:
ok Perfect. Correct in 99 tests.
Test #48:
score: 30
Accepted
time: 75ms
memory: 29184kb
input:
17542991876646715766 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #49:
score: 30
Accepted
time: 66ms
memory: 29000kb
input:
11509469256784773735 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #50:
score: 30
Accepted
time: 74ms
memory: 29032kb
input:
15187255126140633228 1237458 18364525
output:
126534126
result:
ok Perfect. Correct in 99 tests.
Test #51:
score: 30
Accepted
time: 68ms
memory: 28576kb
input:
5596351031354288494 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #52:
score: 30
Accepted
time: 69ms
memory: 28916kb
input:
1956884572310497827 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #53:
score: 30
Accepted
time: 74ms
memory: 29140kb
input:
1848311009363078904 1237458 18364525
output:
126534126
result:
ok Perfect. Correct in 99 tests.
Test #54:
score: 30
Accepted
time: 67ms
memory: 28868kb
input:
7958126186516090968 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #55:
score: 30
Accepted
time: 69ms
memory: 29296kb
input:
14895520484903877251 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #56:
score: 30
Accepted
time: 74ms
memory: 29408kb
input:
252125976313631579 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #57:
score: 30
Accepted
time: 75ms
memory: 29696kb
input:
8822075999373790379 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #58:
score: 30
Accepted
time: 69ms
memory: 28840kb
input:
12301960690081072082 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #59:
score: 30
Accepted
time: 73ms
memory: 28772kb
input:
6580770166803301984 1237458 18364525
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #60:
score: 30
Accepted
time: 72ms
memory: 29216kb
input:
11293302044901951261 1237458 18364525
output:
126534126
result:
ok Perfect. Correct in 99 tests.
Subtask #4:
score: 14.9081
Acceptable Answer
Test #61:
score: 25
Acceptable Answer
time: 161ms
memory: 35164kb
input:
6934415118162240981 1237458 18364524 21312414 32673238 236176120
output:
126534123
result:
points 0.5 Correct Answer. Correct in 96 tests.
Test #62:
score: 17.688
Acceptable Answer
time: 156ms
memory: 35232kb
input:
3842633665807973417 1237458 18364524 21312413 32673238 236176120
output:
126534121
result:
points 0.3537593748 Correct Answer. Correct in 94 tests.
Test #63:
score: 20.9759
Acceptable Answer
time: 155ms
memory: 35192kb
input:
7239866286946328663 1237458 18364524 21312414 32673238 236176120
output:
126534122
result:
points 0.4195179763 Correct Answer. Correct in 95 tests.
Test #64:
score: 30.188
Acceptable Answer
time: 161ms
memory: 35268kb
input:
7703816040948127846 1237458 18364524 21312414 32673238 236176120
output:
126534124
result:
points 0.6037593748 Correct Answer. Correct in 97 tests.
Test #65:
score: 30.188
Acceptable Answer
time: 168ms
memory: 35232kb
input:
3603384166177697472 1237458 18364524 21312413 32673238 236176120
output:
126534124
result:
points 0.6037593748 Correct Answer. Correct in 97 tests.
Test #66:
score: 20.9759
Acceptable Answer
time: 164ms
memory: 35196kb
input:
3656923047342207392 1237458 18364524 21312414 32673238 236176120
output:
126534122
result:
points 0.4195179763 Correct Answer. Correct in 95 tests.
Test #67:
score: 14.9081
Acceptable Answer
time: 159ms
memory: 35236kb
input:
527459705711820317 1237458 18364524 21312413 32673238 236176120
output:
126534120
result:
points 0.2981612695 Correct Answer. Correct in 93 tests.
Test #68:
score: 25
Acceptable Answer
time: 155ms
memory: 35160kb
input:
9663120536403908130 1237458 18364524 21312413 32673238 236176120
output:
126534123
result:
points 0.5 Correct Answer. Correct in 96 tests.
Test #69:
score: 50
Accepted
time: 104ms
memory: 28368kb
input:
9439840407846051020 1237458 18364524 21312414 32673236 236176120
output:
126534127
result:
ok Perfect. Correct in 100 tests.
Test #70:
score: 20.9759
Acceptable Answer
time: 159ms
memory: 35220kb
input:
13809961864883455849 1237458 18364524 21312413 32673238 236176120
output:
126534122
result:
points 0.4195179763 Correct Answer. Correct in 95 tests.
Test #71:
score: 37.5
Acceptable Answer
time: 161ms
memory: 35152kb
input:
15124215729371202231 1237458 18364524 21312414 32673238 236176120
output:
126534125
result:
points 0.75 Correct Answer. Correct in 98 tests.
Test #72:
score: 50
Accepted
time: 158ms
memory: 35180kb
input:
7117551168813448970 1237458 18364524 21312414 32673238 236176120
output:
126534126
result:
ok Perfect. Correct in 99 tests.
Test #73:
score: 37.5
Acceptable Answer
time: 159ms
memory: 35036kb
input:
5561290863673255532 1237458 18364524 21312414 32673238 236176120
output:
126534125
result:
points 0.75 Correct Answer. Correct in 98 tests.
Test #74:
score: 37.5
Acceptable Answer
time: 158ms
memory: 35272kb
input:
13802789789482912767 1237458 18364524 21312414 32673238 236176120
output:
126534125
result:
points 0.75 Correct Answer. Correct in 98 tests.
Test #75:
score: 37.5
Acceptable Answer
time: 160ms
memory: 35092kb
input:
9913943612955590097 1237458 18364524 21312414 32673238 236176120
output:
126534125
result:
points 0.75 Correct Answer. Correct in 98 tests.
Test #76:
score: 14.9081
Acceptable Answer
time: 156ms
memory: 35276kb
input:
9308648462630523956 1237458 18364524 21312414 32673238 236176120
output:
126534120
result:
points 0.2981612695 Correct Answer. Correct in 93 tests.
Test #77:
score: 25
Acceptable Answer
time: 158ms
memory: 35176kb
input:
7898242699188216716 1237458 18364524 21312414 32673238 236176120
output:
126534123
result:
points 0.5 Correct Answer. Correct in 96 tests.
Test #78:
score: 37.5
Acceptable Answer
time: 158ms
memory: 35216kb
input:
17772607140853820910 1237458 18364524 21312414 32673238 236176120
output:
126534125
result:
points 0.75 Correct Answer. Correct in 98 tests.
Test #79:
score: 25
Acceptable Answer
time: 158ms
memory: 35060kb
input:
3917596392610036445 1237458 18364524 21312413 32673238 236176120
output:
126534123
result:
points 0.5 Correct Answer. Correct in 96 tests.
Test #80:
score: 30.188
Acceptable Answer
time: 160ms
memory: 35132kb
input:
7049562837957796004 1237458 18364524 21312414 32673238 236176120
output:
126534124
result:
points 0.6037593748 Correct Answer. Correct in 97 tests.