#include "chameleon.h"
#include <vector>
#include<iostream>
#define pb push_back
using namespace std;
namespace {
int variable_example = 1;
} // namespace
vector<int>have[1001];
int done[1001],like[1001];
void Solve(int n){
for(int i=1;i<=2*n;i++){
if(done[i])continue;
for(int j=1;j<=2*n;j++){
if(i!=j){
vector<int>q={i,j};
if(Query(q)==1){
have[i].pb(j);
}
}
}
if(have[i].size()==1){
Answer(i,have[i][0]);
done[i]=1;
done[have[i][0]]=1;
continue;
}
vector<int>ask(3,0);
for(int j=0;j<3;j++){
vector<int>q={i,have[i][j],have[i][(j+1)%3]};
ask[j]=Query(q);
}
for(int j=0;j<3;j++)if(ask[j]==2&&ask[(j-1+3)%3]==2){
like[i]=have[i][j];
}
}
for(int i=1;i<=2*n;i++){
if(done[i])continue;
for(int j=0;j<3;j++)if(have[i][j]!=like[i]&&i!=like[have[i][j]]){
Answer(i,have[i][j]);
done[have[i][j]]=1;
}
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |