Submission #767515

#TimeUsernameProblemLanguageResultExecution timeMemory
767515Ahmed57Cave (IOI13_cave)C++17
21 / 100
5 ms468 KiB
#include "cave.h"
#include<bits/stdc++.h>

using namespace std;
vector<int> remo(vector<int> v,int ind){
    vector<int>lol;
    for(int i = 0;i<v.size();i++){
        if(i==ind)continue;
        lol.push_back(v[i]);
    }
    return lol;
}
void exploreCave(int N){
    mt19937 rnd(chrono::steady_clock::now().time_since_epoch().count());
    uniform_int_distribution<int> rng(1, (1ll<<20));
    int S[N] , D[N] = {0};
    for(int i = 0;i<N;i++){
        S[i] = rng(rnd)%2;
    }
    vector<int> rem;
    for(int i = 0;i<N;i++)rem.push_back(i);
    int x = tryCombination(S);
    while(x!=-1){
        int e = rng(rnd)%rem.size();
        S[rem[e]] = 1-S[rem[e]];
        int y = tryCombination(S);
        if(y==x){
            S[rem[e]] = 1-S[rem[e]];
            continue;
        }
        if(y==-1||y>x){
            D[rem[e]] = x;
            rem =remo(rem,e);
            x = y;
            continue;
        }else if(x>y){
            D[rem[e]] = y;
            S[rem[e]] = 1-S[rem[e]];
            rem = remo(rem,e);
            continue;
        }
    }
    for(auto i:rem){
        S[i] = 1 - S[i];
        int y = tryCombination(S);
        D[i] = y;
        S[i] = 1 - S[i];
    }
    answer(S,D);
}
/*
int main(){

}*/

Compilation message (stderr)

cave.cpp: In function 'std::vector<int> remo(std::vector<int>, int)':
cave.cpp:7:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    7 |     for(int i = 0;i<v.size();i++){
      |                   ~^~~~~~~~~
#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...