Submission #940756

# Submission time Handle Problem Language Result Execution time Memory
940756 2024-03-07T15:15:16 Z PVM_pvm Super Dango Maker (JOI22_dango3) C++17
22 / 100
172 ms 856 KB
#include "dango3.h"
#include <bits/stdc++.h>
using namespace std;
int n,m;
void boqn(vector<int> pozicii, int cn, int cm)
{
    random_shuffle(pozicii.begin(),pozicii.end());
    /*cout<<"davam: "<<cn<<" "<<cm<<"\n";
    for (int q=0;q<pozicii.size();q++) cout<<pozicii[q]<<" ";
    cout<<"\n";*/
    if (cm==1)
    {
        Answer(pozicii);
        return;
    }
    /*int l=0,r=cn*cm;
        vector<int> zaqu;
    while (l<r-1)
    {
        int mid=(l+r)/2;
        zaqu.clear();
        for (int q=0;q<=mid;q++) zaqu.push_back(pozicii[q]);
        int qu=Query(zaqu);
        //cout<<l<<" "<<mid<<" "<<r<<" "<<qu<<"\n";
        if (qu<cm/2) l=mid;
        else r=mid;
    }*/

    //cout<<r<<"\n";
    vector<int> pyrvo,vtoro;
    int r=0;
    for (r=0;r<cn*cm;r++)
    {
        pyrvo.push_back(pozicii[r]);
        if (Query(pyrvo)==cm/2) break;
    }
    //for (int q=0;q<=r;q++) pyrvo.push_back(pozicii[q]);
    for (int q=r+1;q<cn*cm;q++) vtoro.push_back(pozicii[q]);
    for (int q=r-1;q>=0;q--)
    {
        int poq=pyrvo[q];
        swap(pyrvo[pyrvo.size()-1],pyrvo[q]);
        pyrvo.pop_back();
        int qu=Query(pyrvo);
        //cout<<"mahnah "<<poq<<" "<<" i stana "<<qu<<"\n";
        if (qu<cm/2)
        {
            pyrvo.push_back(poq);
            swap(pyrvo[pyrvo.size()-1],pyrvo[q]);
        }
        else
        {
            vtoro.push_back(poq);
        }
    }
    boqn(pyrvo,cn,cm/2);
    boqn(vtoro,cn,cm-cm/2);
}
void Solve(int N, int M) {
    n=N;
    m=M;
    vector<int> og;
    for (int q=1;q<=n*m;q++) og.push_back(q);
    boqn(og,n,m);
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 348 KB Output is correct
2 Correct 3 ms 348 KB Output is correct
3 Correct 3 ms 348 KB Output is correct
4 Correct 3 ms 348 KB Output is correct
5 Correct 3 ms 504 KB Output is correct
6 Correct 3 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 54 ms 600 KB Output is correct
2 Correct 53 ms 620 KB Output is correct
3 Correct 56 ms 604 KB Output is correct
4 Correct 54 ms 600 KB Output is correct
5 Correct 55 ms 600 KB Output is correct
6 Correct 60 ms 856 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 172 ms 660 KB Wrong Answer [3]
2 Halted 0 ms 0 KB -