Submission #1320573

#TimeUsernameProblemLanguageResultExecution timeMemory
1320573ezzzayUnscrambling a Messy Bug (IOI16_messy)C++20
In queue
0 ms0 KiB
//#include <vector>
#include "messy.h"
#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
std::vector<int> restore_permutation(int n, int w, int r) {
    string s;
    for(int i=0;i<n;i++)s+='0';
    for(int i=0;i<n;i++){
        s[i]='1';
        add_element(s);
    }
    compile_set();
    vector<bool>fnd(n);
    vector<int>p(n);
    for(int i=0;i<n;i++){
        string s;for(int j=0;j<n;j++)s+='0';
        vector<int>vc;
        for(int j=0;j<n;j++){
            if(fnd[j])s[j]='1';
            else vc.pb(j);
        }
        for(auto j:vc){
            string t=s;
            t[j]='1';
            if(check_element(t)){
                fnd[j]=1;
                p[i]=j;
                break;
            }
        }
    }
    return p;
}