# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1144638 | AliMark71 | Broken Device (JOI17_broken_device) | C++20 | 0 ms | 320 KiB |
#include "Annalib.h"
#include <bits/stdc++.h>
std::vector<bool> s(150);
void set(int a, int b) {
if (s[a]) return;
s[a] = 1;
Set(a, b);
}
void Anna(int N, long long x, int K, int p[]){
if (p[0] > 150/2) {
set(0, 1);
for (int i = 0; i <= 60; i++) {
if (x&(1<<i)) set(i + 1, 1);
else set(i + 1, 0);
}
} else if (p[0] >= 150/2) {
set(p[0] + 1, 1);
for (int i = p[0] + 1; i < N; i++) {
if (x&(1<<i)) set(i, 1);
else set(i, 0);
}
}
for (int i = 0; i < N; i++) if (!s[i]) set(i, 0);
}
#include "Brunolib.h"
long long Bruno(int N, int A[]) {
bool f = 0;
long long x;
for (int i = 0; i < N; i++) {
if (f && A[i]) x |= 1 << i;
f |= A[i];
}
return x;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |