# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
602468 | Abdulmohsen1284 | Art Collections (BOI22_art) | C++17 | 0 ms | 0 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;
long long val[3000005],an[3000005];
void solve(int N) {
long long n=N;
vector <int> v;
for(int i=0;i<n;i++)
{
v.push_back(i+1);
}
for(int i=0;i<n;i++)
{
an[i]=publish(v);
if(i!=0)
{
val[v[0]]=ceil((double)n/2)+((an[i]-an[i-1])/2);
if(an[i]-an[i-1]>0)
val[v[0]]++;
}
vector <int> oth=v;
for(int j=0;j<v.size();j++)
{
v[j]=oth[(j-1+n)%n];
}
}
val[v[0]]=ceil((double)n/2)+((an[0]-an[n-1])/2);
//cout<<(an[0]-an[n-1])/2<<"\n";
if(an[0]-an[n-1]>0)
val[v[0]]++;
vector <int> ou;
for(int i=1;i<=n;i++)
{
//cout<<val[i]<<" ";
for(int j=1;j<=n;j++)
{
if(val[j]==i)
ou.push_back(j);
}
}
answer(ou);
}