Submission #1154768

#TimeUsernameProblemLanguageResultExecution timeMemory
1154768WongYiKaiBroken Device (JOI17_broken_device)C++20
0 / 100
18 ms1344 KiB
#include "Annalib.h" #include <bits/stdc++.h> using namespace std; void Anna( int N, long long X, int K, int P[] ){ int block[N+5],done[N+5]; memset(block,0,sizeof(block)); memset(done,0,sizeof(done)); for (int i=0;i<K;i++) block[P[i]] = 1; vector<int> e; for (int i=0;i<N-1;i++){ if (block[i]==0 && block[i+1]==0){ e.push_back(i); i += 1; } } int ind = 0; while (X>0){ if (ind>=e.size()) break; if (X&1){ Set(e[ind],1); Set(e[ind]+1,1); done[e[ind]] = 1; done[e[ind]+1] = 1; } else{ Set(e[ind],1); Set(e[ind]+1,0); done[e[ind]] = 1; done[e[ind]+1] = 1; } ind++; X = X>>1; } for (int i=0;i<N;i++){ if (done[i]==0) Set(i,0); } }
#include "Brunolib.h" #include <bits/stdc++.h> using namespace std; long long Bruno( int N, int A[] ){ long long ans = 0; int curr = 0; for (int i=0;i<N-1;i++){ if (A[i]==1){ if (A[i+1]==1){ ans += (1<<curr); } curr++; i++; } } return curr; }
#Verdict Execution timeMemoryGrader output
Fetching results...