QOJ.ac
QOJ
The 2nd Universal Cup Finals is coming! Check out our event page, schedule, and competition rules!
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#173167 | #7178. Bishops | ucup-team298# | WA | 17ms | 9044kb | C++14 | 1.3kb | 2023-09-09 22:15:13 | 2023-09-09 22:15:14 |
Judging History
answer
#include<bits/stdc++.h>
#define re register
using namespace std;
inline int read(){
re int t=0;re char v=getchar();
while(v<'0')v=getchar();
while(v>='0')t=(t<<3)+(t<<1)+v-48,v=getchar();
return t;
}
const int M=998244353;
inline void add(re int &x,re int y){(x+=y)>=M?x-=M:x;}
inline int Mod(re int x){return x>=M?x-M:x;}
inline int ksm(re int x,re int y){
re int s=1;
while(y){
if(y&1)s=1ll*s*x%M;
x=1ll*x*x%M,y>>=1;
}
return s;
}
int t,n,m,a[1000002],ans,R[1000002],stk[1000002],tp,lst;
char s[1000002];
vector<int>A,B;
int main(){
n=read(),m=read();
if(n>m)swap(n,m),ans=1;
lst=0;
for(re int i=1;i+n<=m;i+=n){
lst=i;
for(re int j=1;j<=n;++j)A.push_back(j),B.push_back(i);
}
for(re int j=1;j<=n;++j)A.push_back(j),B.push_back(m);
if(lst)lst=lst+m+1>>1;
else lst=1;
re int dlt=m-lst;
if(m%n==0&&m!=n){
for(re int i=1;i<=n;++i){
if(i>dlt)s[i-dlt]=1;
if(i+dlt<=n)s[i+dlt]=1;
}
for(re int i=1;i<=n;++i)if(!s[i])A.push_back(i),B.push_back(lst),A.push_back(i),B.push_back(lst-1),++i;
}
else if(dlt){
for(re int i=1;i<=n;++i){
if(i>dlt)s[i-dlt]=1;
if(i+dlt<=n)s[i+dlt]=1;
}
for(re int i=1;i<=n;++i)if(!s[i])A.push_back(i),B.push_back(lst);
}
printf("%u\n",A.size());
for(re int i=0;i<A.size();++i){
if(ans)swap(A[i],B[i]);
printf("%d %d\n",A[i],B[i]);
}
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3900kb
input:
2 5
output:
6 1 1 2 1 1 3 2 3 1 5 2 5
result:
ok n: 2, m: 5, bishops: 6
Test #2:
score: 0
Accepted
time: 1ms
memory: 5820kb
input:
5 5
output:
8 1 5 2 5 3 5 4 5 5 5 2 1 3 1 4 1
result:
ok n: 5, m: 5, bishops: 8
Test #3:
score: 0
Accepted
time: 17ms
memory: 4900kb
input:
100000 100000
output:
199998 1 100000 2 100000 3 100000 4 100000 5 100000 6 100000 7 100000 8 100000 9 100000 10 100000 11 100000 12 100000 13 100000 14 100000 15 100000 16 100000 17 100000 18 100000 19 100000 20 100000 21 100000 22 100000 23 100000 24 100000 25 100000 26 100000 27 100000 28 100000 29 100000 30 100000 31...
result:
ok n: 100000, m: 100000, bishops: 199998
Test #4:
score: 0
Accepted
time: 11ms
memory: 9044kb
input:
100000 99999
output:
199998 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 23 1 24 1 25 1 26 1 27 1 28 1 29 1 30 1 31 1 32 1 33 1 34 1 35 1 36 1 37 1 38 1 39 1 40 1 41 1 42 1 43 1 44 1 45 1 46 1 47 1 48 1 49 1 50 1 51 1 52 1 53 1 54 1 55 1 56 1 57 1 58 1 59 1 60 1 ...
result:
ok n: 100000, m: 99999, bishops: 199998
Test #5:
score: 0
Accepted
time: 9ms
memory: 7092kb
input:
100000 50000
output:
149998 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 23 1 24 1 25 1 26 1 27 1 28 1 29 1 30 1 31 1 32 1 33 1 34 1 35 1 36 1 37 1 38 1 39 1 40 1 41 1 42 1 43 1 44 1 45 1 46 1 47 1 48 1 49 1 50 1 51 1 52 1 53 1 54 1 55 1 56 1 57 1 58 1 59 1 60 1 ...
result:
ok n: 100000, m: 50000, bishops: 149998
Test #6:
score: 0
Accepted
time: 3ms
memory: 6236kb
input:
1 100000
output:
100000 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 23 1 24 1 25 1 26 1 27 1 28 1 29 1 30 1 31 1 32 1 33 1 34 1 35 1 36 1 37 1 38 1 39 1 40 1 41 1 42 1 43 1 44 1 45 1 46 1 47 1 48 1 49 1 50 1 51 1 52 1 53 1 54 1 55 1 56 1 57 1 58 1 59 1 60 1 ...
result:
ok n: 1, m: 100000, bishops: 100000
Test #7:
score: -100
Wrong Answer
time: 16ms
memory: 4924kb
input:
34535 99889
output:
134422 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 23 1 24 1 25 1 26 1 27 1 28 1 29 1 30 1 31 1 32 1 33 1 34 1 35 1 36 1 37 1 38 1 39 1 40 1 41 1 42 1 43 1 44 1 45 1 46 1 47 1 48 1 49 1 50 1 51 1 52 1 53 1 54 1 55 1 56 1 57 1 58 1 59 1 60 1 61...
result:
wrong answer Participant's answer is not optimal (134422 < 134423)