Submission #1262306

#TimeUsernameProblemLanguageResultExecution timeMemory
1262306inkvizytorBroken Device (JOI17_broken_device)C++20
0 / 100
29 ms1344 KiB
#include "Annalib.h" #include <bits/stdc++.h> using namespace std; void ustaw(vector<int> v, int i) { Set(i, v[0]), Set(i+1, v[1]), Set(i+2, v[2]); } void Anna(int N, long long X, int K, int P[] ){ int s = 0; vector<int> a (N+2, 0); for (int i = 0; i < K; i++) { a[P[i]]=1; } for (int i = 0; i < N; i+=3) { int l = a[i]+a[i+1]+a[i+2]; if (s >= 60) { ustaw({0, 0, 0}, i); } else if (l >= 2) { ustaw({0, 0, 0}, i); } else if (a[i]) { if (X&(1ll<<s)) { ustaw({0, 1, 0}, i); s++; } else { if (X&(1ll<<(s+1))) { ustaw({1, 1, 0}, i); s+=2; } else { ustaw({0, 0, 1}, i); s+=2; } } } else if (a[i+1]) { if (X&(1ll<<s)) { ustaw({1, 0, 1}, i); s++; } else { ustaw({1, 0, 0}, i); s++; } } else if (a[i+2]) { if (X&(1ll<<s)) { ustaw({0, 1, 0}, i); s++; } else { ustaw({1, 0, 0}, i); s++; } } else { if (X&(1ll<<s)) { if (X&(1ll<<(s+1))) { ustaw({1, 1, 1}, i); s+=2; } else { ustaw({0, 1, 1}, i); s+=2; } } else { if (X&(1ll<<(s+1))) { ustaw({1, 1, 0}, i); s+=2; } else { ustaw({0, 0, 1}, i); s+=2; } } } } }
#include "Brunolib.h" #include <bits/stdc++.h> using namespace std; #define ll long long long long Bruno( int N, int A[] ){ ll x = 0, s = 0; for (int i = 0; i < N; i+=3) { if (A[i] == 0) { if (A[i+1]==0) { if (A[i+2]==1) { s+=2; } } else { if (A[i+2]==0) { x+=(1<<s); s++; } else { x +=(1<<s); s+=2; } } } else { if (A[i+1]==0) { if (A[i+2]==0) { s++; } else { x+=(1<<s); s++; } } else { if (A[i+2]==0) { x+=(1<<(s+1)); s+=2; } else { x+=(1<<s)+(1<<(s+1)); s+=2; } } } } return x; }
#Verdict Execution timeMemoryGrader output
Fetching results...