Submission #314657

# Submission time Handle Problem Language Result Execution time Memory
314657 2020-10-20T15:12:57 Z jaaguptamme Cave (IOI13_cave) C++14
12 / 100
577 ms 504 KB
#include <bits/stdc++.h>
#include "cave.h"
using namespace std;
void SW(int in[],int dn[],int ps){
    for(int i=0;i<ps;i++){
        if(dn[i]==0){
            in[i]=1-in[i];
        }
    }
}
/*int tryCombination(int in[]){
    for(int i=0;i<sizeof in;i++){
        cout<<in[i]<<' ';
    }
    cout<<endl;
    int vl;cin>>vl;
    return vl;
}*/
void exploreCave(int N){
    int in[N],ns[N],dn[N];
    for(int i=0;i<N;i++)in[i]=ns[i]=dn[i]=0;
    for(int i=0;i<N;i++){
        int cur=tryCombination(in);
        if(cur==-1)cur=N;
        if(cur>i){
            int l=1,r=N,ans=N;
            while(l<=r){
                int m=(l+r)/2;
                SW(in,dn,m);
                int vl=tryCombination(in);
                if(vl==-1)vl=N;
                if(vl<=i){
                    ans=m;
                     r=m-1;
                }else{
                    l=m+1;
                }
                SW(in,dn,m);
            }
            ans--;
            dn[ans]=1;
            ns[i]=ans;
            in[ans]=0;
            //cout<<ans<<endl;
        }else{
            int l=1,r=N,ans=N;
            while(l<=r){
                int m=(l+r)/2;
                SW(in,dn,m);
                int vl=tryCombination(in);
                if(vl==-1)vl=N;
                if(vl>i){
                    ans=m;
                    r=m-1;
                }else{

                    l=m+1;
                }
                SW(in,dn,m);
            }
            ans--;
            dn[ans]=1;
            ns[i]=ans;
            in[ans]=1;
            //cout<<ans<<endl;
        }
    }
    /*for(int i=0;i<N;i++){
        cout<<in[i]<<' ';
    }
    cout<<endl;
    for(int i=0;i<N;i++){
        cout<<ns[i]<<' ';
    }
    cout<<endl;*/
    answer(in,ns);
}
/*
int main(){
    exploreCave(4);
}
*/
# Verdict Execution time Memory Grader output
1 Correct 312 ms 384 KB Output is correct
2 Correct 311 ms 504 KB Output is correct
3 Correct 472 ms 384 KB Output is correct
4 Correct 326 ms 464 KB Output is correct
5 Correct 569 ms 468 KB Output is correct
6 Correct 484 ms 504 KB Output is correct
7 Correct 566 ms 504 KB Output is correct
8 Correct 0 ms 256 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 0 ms 256 KB Output is correct
11 Correct 0 ms 256 KB Output is correct
12 Correct 469 ms 504 KB Output is correct
13 Correct 469 ms 504 KB Output is correct
14 Correct 466 ms 504 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 577 ms 384 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 543 ms 468 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 0 ms 256 KB Output is correct
6 Incorrect 563 ms 504 KB Answer is wrong
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 0 ms 384 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 256 KB Output is correct
7 Incorrect 1 ms 256 KB Answer is wrong
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 0 ms 384 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 256 KB Output is correct
7 Incorrect 1 ms 256 KB Answer is wrong
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 312 ms 384 KB Output is correct
2 Correct 311 ms 504 KB Output is correct
3 Correct 472 ms 384 KB Output is correct
4 Correct 326 ms 464 KB Output is correct
5 Correct 569 ms 468 KB Output is correct
6 Correct 484 ms 504 KB Output is correct
7 Correct 566 ms 504 KB Output is correct
8 Correct 0 ms 256 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 0 ms 256 KB Output is correct
11 Correct 0 ms 256 KB Output is correct
12 Correct 469 ms 504 KB Output is correct
13 Correct 469 ms 504 KB Output is correct
14 Correct 466 ms 504 KB Output is correct
15 Correct 577 ms 384 KB Output is correct
16 Correct 1 ms 256 KB Output is correct
17 Correct 543 ms 468 KB Output is correct
18 Correct 0 ms 256 KB Output is correct
19 Correct 0 ms 256 KB Output is correct
20 Incorrect 563 ms 504 KB Answer is wrong
21 Halted 0 ms 0 KB -