# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
166563 | wmrmr | Carnival (CEOI14_carnival) | C++17 | 11 ms | 380 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
const int MAX = 160;
int n, qtd;
int cor[MAX], posCor[MAX], range[MAX];
int BB(int pos)
{
int ini = 1, fim = range[pos];
while(ini != fim)
{
int m = (ini+fim)/2;
int num = (m-ini+1);
printf("%d ",num+1);
for(int i=ini;i<=m;i++) printf("%d ",posCor[i]);
printf("%d ",pos);
cout << endl;
int resp; scanf("%d",&resp);
if(resp == num) fim = m;
else ini = m+1;
}
return ini;
}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
printf("%d ",i);
for(int j=1;j<=i;j++) printf("%d ",j);
cout << endl;
int resp; scanf("%d",&resp);
if(resp > qtd) qtd++, posCor[qtd] = i, cor[i] = qtd;
else range[i] = qtd;
}
for(int i=1;i<=n;i++)
{
if(cor[i]) continue;
cor[i] = BB(i);
}
printf("0 ");
for(int i=1;i<=n;i++) printf("%d ",cor[i]);
return 0;
}
Compilation message (stderr)
# | 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... |