| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 925971 | andrei_boaca | Super Dango Maker (JOI22_dango3) | C++17 | 2043 ms | 864 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>
#include "dango3.h"
//#include "grader.cpp"
using namespace std;
int cul[10005];
int nn,mm;
vector<int> poz;
bool bad[10005];
bool have(int x,int l,int r)
{
    bad[x]=1;
    for(int i=l;i<=r;i++)
        bad[poz[i]]=1;
    vector<int> v;
    for(int i=1;i<=nn*mm;i++)
    {
        if(!bad[i])
            v.push_back(i);
        else
            bad[i]=0;
    }
    int rez=Query(v);
    return rez==mm-2;
}
bool f[10005];
void Solve(int n,int m)
{
    nn=n;
    mm=m;
    cul[1]=1;
    poz.push_back(1);
    for(int i=2;i<=n*m;i++)
    {
        int st=0;
        int dr=poz.size();
        dr--;
        int who=0;
        while(st<=dr)
        {
            int mij=(st+dr)/2;
            if(st==dr&&poz.size()==n)
            {
                who=st+1;
                break;
            }
            if(have(i,st,mij))
            {
                if(st==mij)
                {
                    who=st+1;
                    break;
                }
                dr=mij;
            }
            else
                st=mij+1;
        }
        if(who==0)
        {
            poz.push_back(i);
            who=poz.size();
        }
        cul[i]=who;
    }
    for(int z=1;z<=m;z++)
    {
        for(int i=1;i<=n;i++)
            f[i]=0;
        vector<int> v;
        for(int i=1;i<=n*m;i++)
            if(cul[i]!=0&&f[cul[i]]==0)
            {
                v.push_back(i);
                f[cul[i]]=1;
                cul[i]=0;
            }
        Answer(v);
    }
}
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... | ||||
