Submission #1320579

#TimeUsernameProblemLanguageResultExecution timeMemory
1320579ezzzayUnscrambling a Messy Bug (IOI16_messy)C++20
38 / 100
1 ms332 KiB
#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);
        }
            srand(unsigned(time(NULL)));
            std::random_shuffle(vc.begin(), vc.end());

        for(auto j:vc){
            string t=s;
            t[j]='1';
            if(check_element(t)){
                fnd[j]=1;
                p[j]=i;
                break;
            }
        }
    }
    return p;
}

Compilation message (stderr)

messy.cpp: In function 'std::vector<int> restore_permutation(int, int, int)':
messy.cpp:25:32: warning: 'void std::random_shuffle(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<int*, vector<int> >]' is deprecated: use 'std::shuffle' instead [-Wdeprecated-declarations]
   25 |             std::random_shuffle(vc.begin(), vc.end());
      |             ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:61,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:51,
                 from messy.cpp:2:
/usr/include/c++/13/bits/stl_algo.h:4581:5: note: declared here
 4581 |     random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
      |     ^~~~~~~~~~~~~~
messy.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
messy_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...