QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#386454 | #2160. Cardiology | Doqe | AC ✓ | 14ms | 16464kb | C++14 | 666b | 2024-04-11 16:56:32 | 2024-04-11 16:56:33 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int r,c,nx[N],D[N],dp[N];
inline int dis(int X,int Y){return max(X+1,r-X)+max(Y+1,c-Y);}
int main()
{
cin>>r>>c;
int mn=1e9,P=1,_I,_J,S=0;
long long Z=0;
for(int p=0;p<c;++p,Z+=r)
{
int I=Z/(c-1);
int J=(Z+I)%c;
if(I&&!J)continue;
int w=dis(I,J);
if(mn>w)mn=w,P=p,_I=I,_J=J;
}
for(int i=0;i<r;++i)nx[i]=(1ll*P*r+i)/c,D[nx[i]]+=i!=nx[i];
queue<int>Q;for(int i=0;i<r;++i)if(!D[i])Q.push(i);
while(!Q.empty())
{
int u=Q.front();Q.pop();S=max(S,dp[u]);
int v=nx[u];if(!--D[v])dp[v]=dp[u]+1,Q.push(v);
}
cout<<P+1<<" "<<_I+1<<" "<<_J+1<<" "<<S+1<<endl;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 7ms
memory: 7760kb
input:
6666 966364
output:
473832 3269 483163 2
result:
ok single line: '473832 3269 483163 2'
Test #2:
score: 0
Accepted
time: 3ms
memory: 7672kb
input:
36 906986
output:
12598 1 453493 2
result:
ok single line: '12598 1 453493 2'
Test #3:
score: 0
Accepted
time: 8ms
memory: 14444kb
input:
704877 297616
output:
148803 352426 140980 3
result:
ok single line: '148803 352426 140980 3'
Test #4:
score: 0
Accepted
time: 14ms
memory: 14524kb
input:
1000000 1000000
output:
500000 500000 500000 2
result:
ok single line: '500000 500000 500000 2'
Test #5:
score: 0
Accepted
time: 0ms
memory: 7732kb
input:
2 2
output:
1 1 1 2
result:
ok single line: '1 1 1 2'
Test #6:
score: 0
Accepted
time: 6ms
memory: 16464kb
input:
1000000 2
output:
1 1 1 21
result:
ok single line: '1 1 1 21'
Test #7:
score: 0
Accepted
time: 7ms
memory: 7608kb
input:
2 1000000
output:
250001 1 500001 2
result:
ok single line: '250001 1 500001 2'
Test #8:
score: 0
Accepted
time: 11ms
memory: 14612kb
input:
985391 511611
output:
255806 492696 255806 3
result:
ok single line: '255806 492696 255806 3'
Test #9:
score: 0
Accepted
time: 8ms
memory: 11380kb
input:
435766 614914
output:
304739 215957 307481 2
result:
ok single line: '304739 215957 307481 2'
Test #10:
score: 0
Accepted
time: 4ms
memory: 15636kb
input:
818196 58
output:
29 401921 49 5
result:
ok single line: '29 401921 49 5'
Test #11:
score: 0
Accepted
time: 0ms
memory: 13584kb
input:
401765 19
output:
10 200883 10 6
result:
ok single line: '10 200883 10 6'
Test #12:
score: 0
Accepted
time: 6ms
memory: 7724kb
input:
95 912669
output:
456335 48 456335 2
result:
ok single line: '456335 48 456335 2'
Test #13:
score: 0
Accepted
time: 3ms
memory: 7764kb
input:
81 429950
output:
2655 1 214975 2
result:
ok single line: '2655 1 214975 2'
Test #14:
score: 0
Accepted
time: 14ms
memory: 14624kb
input:
999956 999959
output:
249991 249990 499979 3
result:
ok single line: '249991 249990 499979 3'
Test #15:
score: 0
Accepted
time: 14ms
memory: 14924kb
input:
999935 999946
output:
449976 449971 499976 3
result:
ok single line: '449976 449971 499976 3'
Test #16:
score: 0
Accepted
time: 9ms
memory: 14744kb
input:
999951 999952
output:
1 1 1 2
result:
ok single line: '1 1 1 2'
Test #17:
score: 0
Accepted
time: 3ms
memory: 7900kb
input:
106352 224337
output:
112111 53149 112993 2
result:
ok single line: '112111 53149 112993 2'
Test #18:
score: 0
Accepted
time: 10ms
memory: 12476kb
input:
651870 786333
output:
392936 325744 393775 2
result:
ok single line: '392936 325744 393775 2'
Test #19:
score: 0
Accepted
time: 13ms
memory: 12964kb
input:
838522 972888
output:
486249 419093 486853 2
result:
ok single line: '486249 419093 486853 2'