QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#593569 | #9251. Graph Changing | ucup-team2681 | WA | 0ms | 3624kb | C++23 | 1.6kb | 2024-09-27 14:41:42 | 2024-09-27 14:41:43 |
Judging History
answer
#include<bits/stdc++.h>
#define ll long long
#define pii pair<ll,ll>
#define lowbit(x) (x&-x)
#define log(x) (31^__builtin_clz(x))
using namespace std;
ll t,n,k,x,y;
ll calc(ll a,ll b){
if(abs(a-b)>=k)return 1;
if((a-1>k&&n-a>k)||(b-1>k&&n-b>k))return -1;
if((a-1>=k&&b-1>=k)||(n-a>=k&&n-b>=k))return 2;
return 3;
}
int fl=0;
int now=0;
void solve(){
cin>>t>>n>>k>>x>>y;
now++;
if(now==128)cout<<t<<" "<<n<<" "<<k<<" "<<x<<" "<<y<<"\n";
if(fl)return;
if(x>y)swap(x,y);
if(t==0){
cout<<y-x<<"\n";
return;
}
if(k==1){
cout<<"1\n";
return;
}
if(k==2){
if(n==2){
cout<<"-1\n";
return;
}
if(n==3){
if(t==1&&x==1&&y==3)cout<<"1\n";
else cout<<"-1\n";
return;
}
if(t&1){
cout<<calc(x,y)<<"\n";
}
else{
cout<<y-x<<"\n";
}
return;
}
if(t>=2){
if(k==3&&t==2){
if(n==5&&x==2&&y==4){
cout<<"1\n";
return;
}
if(n==6){
if(x==1||y==6){
cout<<"-1\n";
return;
}
if((x==2&&y==3)||(x==4&&y==5))cout<<"2\n";
else cout<<"1\n";
return;
}
if(n==7){
if(x==3&&y==5){
cout<<"1\n";
return;
}
}
}
cout<<"-1\n";
return;
}
else{
if((x-1<k&&n-x<k)||(y-1<k&&n-y<k)){
cout<<"-1\n";
}
else{
if(y-x>=k)cout<<"1\n";
else{
if((x-1>=k&&y-1>=k)||(n-x>=k&&n-y>=k))cout<<"2\n";
else cout<<"3\n";
}
}
return;
}
assert(0);
}
int main(){
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
int t=1;
cin>>t;
fl=t==450;
while(t--)solve();
return 0;
}
/*
6*6*5
128
1
1 6 4 2 5
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3624kb
input:
5 1 5 3 2 4 1 10 4 2 4 2 10 5 2 4 1 3 2 1 3 1 3 2 1 2
output:
3 2 -1 1 -1
result:
ok 5 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 3568kb
input:
30 1 2 1 1 2 1 2 2 1 2 1 2 3 1 2 1 2 4 1 2 1 2 5 1 2 1 2 6 1 2 2 2 1 1 2 2 2 2 1 2 2 2 3 1 2 2 2 4 1 2 2 2 5 1 2 2 2 6 1 2 3 2 1 1 2 3 2 2 1 2 3 2 3 1 2 3 2 4 1 2 3 2 5 1 2 3 2 6 1 2 4 2 1 1 2 4 2 2 1 2 4 2 3 1 2 4 2 4 1 2 4 2 5 1 2 4 2 6 1 2 5 2 1 1 2 5 2 2 1 2 5 2 3 1 2 5 2 4 1 2 5 2 5 1 2 5 2 6 1 2
output:
1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1
result:
ok 30 lines
Test #3:
score: 0
Accepted
time: 0ms
memory: 3572kb
input:
90 1 3 1 1 2 1 3 1 1 3 1 3 1 2 3 1 3 2 1 2 1 3 2 1 3 1 3 2 2 3 1 3 3 1 2 1 3 3 1 3 1 3 3 2 3 1 3 4 1 2 1 3 4 1 3 1 3 4 2 3 1 3 5 1 2 1 3 5 1 3 1 3 5 2 3 1 3 6 1 2 1 3 6 1 3 1 3 6 2 3 2 3 1 1 2 2 3 1 1 3 2 3 1 2 3 2 3 2 1 2 2 3 2 1 3 2 3 2 2 3 2 3 3 1 2 2 3 3 1 3 2 3 3 2 3 2 3 4 1 2 2 3 4 1 3 2 3 4 2...
output:
1 1 1 -1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
result:
ok 90 lines
Test #4:
score: -100
Wrong Answer
time: 0ms
memory: 3552kb
input:
180 1 4 1 1 2 1 4 1 1 3 1 4 1 1 4 1 4 1 2 3 1 4 1 2 4 1 4 1 3 4 1 4 2 1 2 1 4 2 1 3 1 4 2 1 4 1 4 2 2 3 1 4 2 2 4 1 4 2 3 4 1 4 3 1 2 1 4 3 1 3 1 4 3 1 4 1 4 3 2 3 1 4 3 2 4 1 4 3 3 4 1 4 4 1 2 1 4 4 1 3 1 4 4 1 4 1 4 4 2 3 1 4 4 2 4 1 4 4 3 4 1 4 5 1 2 1 4 5 1 3 1 4 5 1 4 1 4 5 2 3 1 4 5 2 4 1 4 5 ...
output:
1 1 1 1 1 1 2 1 1 3 1 2 -1 -1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 1 1 1 1 2 3 1 2 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 1 1 1 2 1 1 3 1 2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 1 1 1 1...
result:
wrong answer 128th lines differ - expected: '-1', found: '4 4 4 1 3'