Submission #100045

#TimeUsernameProblemLanguageResultExecution timeMemory
100045rocketninja7Broken Device (JOI17_broken_device)C++14
41 / 100
73 ms3312 KiB
#include "Annalib.h" #include <vector> using namespace std; void Anna( int N, long long X, int K, int P[] ){ bool broken[N]; for(int i=0;i<N;i++){ broken[i]=false; } for(int i=0;i<K;i++){ broken[P[i]]=true; } vector<int> available; for(int i=0;i<N-1;i++){ if(!broken[i]&&!broken[i+1]){ available.push_back(i); i++; } } bool val[N]; for(int i=0;i<N;i++){ val[i]=false; } for(int i=0;i<available.size();i++){ val[available[i]]=true; } for(int i=0;(1LL<<i)<=X;i++){ if((1LL<<i)&X){ val[available[i]+1]=true; } } for( int i = 0; i < N; i++ ){ Set( i, val[i]?1:0 ); } }
#include "Brunolib.h" #include <vector> using namespace std; long long Bruno( int N, int A[] ){ vector<int> available; for(int i=0;i<N;i++){ if(A[i]==1){ available.push_back(i); i++; } } long long ans=0; for(int i=0;i<available.size();i++){ if(A[available[i]+1]){ ans+=(1LL<<i); } } return ans; }

Compilation message (stderr)

Anna.cpp: In function 'void Anna(int, long long int, int, int*)':
Anna.cpp:24:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i=0;i<available.size();i++){
                 ~^~~~~~~~~~~~~~~~~

Bruno.cpp: In function 'long long int Bruno(int, int*)':
Bruno.cpp:14:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i=0;i<available.size();i++){
                 ~^~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...