Submission #537308

#TimeUsernameProblemLanguageResultExecution timeMemory
537308smthCave (IOI13_cave)C++14
0 / 100
2 ms724 KiB
#include<vector>
#include<iostream>
#include "cave.h"
using namespace std;

int s[6000], doors[6000];

void exploreCave(int N) {

   vector<long long>v(N);
   long long i,j;
   for(i=0;i<N;i++){s[i]=doors[i]=0; v[i]=i;}


   int sit;

       for(i=0;i<N;i++)
       {
           for(j=0;j<v.size();j++)s[v[j]]=0;

           if(tryCombination(s)==i)sit=0;
           else sit=1;

           long long le=0, ri=v.size(), mid;

           while(le<=ri)
           {
               mid=(le+ri)/2;

               for(int k=0;k<v.size();k++)
               {
                   if(k<mid)s[v[k]]=sit;
                   else s[v[i]]=1-sit;
               }

               if(tryCombination(s)==i)ri=mid-1;
               else le=mid+1;
           }

           s[v[le]]=1-sit;
           doors[v[le]]=i;

           v.erase(v.begin()+le);
       }
       answer(s,doors);
}

Compilation message (stderr)

cave.cpp: In function 'void exploreCave(int)':
cave.cpp:19:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |            for(j=0;j<v.size();j++)s[v[j]]=0;
      |                    ~^~~~~~~~~
cave.cpp:30:29: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   30 |                for(int k=0;k<v.size();k++)
      |                            ~^~~~~~~~~
#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...