#include "library.h"
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <queue>
using namespace std;
#define pb push_back
const int N=1050;
bool done[N];
deque<int> ans;
void Fill(vector<int> &a, int n)
{
a.clear();
for(int i=1;i<=n;i++) if(!done[i]) a.pb(i);
}
bool Ask(vector<int> a, int i)
{
int sol1=Query(a);
a.pb(i);
int sol2=Query(a);
return sol1==sol2;
}
void Solve(int n)
{
ans.push_back(1);
done[1]=1;
vector<int> my,tmp[2];
int i;
while(ans.size()<n)
{
int x=ans.back();
Fill(my,n);
if(!Ask(my,x)) break;
while(my.size()>1)
{
tmp[0].clear();tmp[1].clear();
for(i=0;i<my.size();i++) tmp[i&1].pb(my[i]);
if(Ask(tmp[0],x)) my=tmp[0];
else my=tmp[1];
}
ans.push_back(my[0]);
done[my[0]]=1;
}
while(ans.size()<n)
{
int x=ans.front();
Fill(my,n);
while(my.size()>1)
{
tmp[0].clear();tmp[1].clear();
for(i=0;i<my.size();i++) tmp[i&1].pb(my[i]);
if(Ask(tmp[0],x)) my=tmp[0];
else my=tmp[1];
}
ans.push_front(my[0]);
done[my[0]]=1;
}
vector<int> ret;
while(ans.size()) ret.pb(ans.front()),ans.pop_front();
Answer(ret);
}
Compilation message
library.cpp: In function 'void Solve(int)':
library.cpp:29:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
while(ans.size()<n)
~~~~~~~~~~^~
library.cpp:37:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(i=0;i<my.size();i++) tmp[i&1].pb(my[i]);
~^~~~~~~~~~
library.cpp:44:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
while(ans.size()<n)
~~~~~~~~~~^~
library.cpp:51:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(i=0;i<my.size();i++) tmp[i&1].pb(my[i]);
~^~~~~~~~~~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
248 KB |
Wrong Answer [1] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
248 KB |
Wrong Answer [1] |
2 |
Halted |
0 ms |
0 KB |
- |