| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 1239931 | SpyrosAliv | Broken Device (JOI17_broken_device) | C++20 | 0 ms | 320 KiB | 
#include "Annalib.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const int BITS = 61;
void Anna(int N, long long X, int K, int P[]){
    int n = N;
    ll x = X;
    int k = K;
    vector<bool> ok(n, true);
    for (int i = 0; i < k; i++) {
        ok[P[i]] = false;
    }
    int curr = 0;
    for (int i = 0; i < BITS; i++) {
        int send = ((x >> i) & 1);
        if (send == 1) {
            while (!ok[curr]) {
                assert(curr >= 0 && curr < n);
                Set(curr, 0);
                curr++;
            }
            assert(curr >= 0 && curr < n);
            Set(curr, 1);
            if (curr < n-1) {
                assert(curr + 1 >= 0 && curr + 1 < n);
                Set(curr+1, 0);
            }
            curr+=2;
            continue;
        }
        else {
            while (!ok[curr] || !ok[curr+1]) {
                assert(curr >= 0 && curr < n);
                Set(curr, 0);
                curr++;
            }
            assert(curr >= 0 && curr < n);
            Set(curr, 1);
            assert(curr + 1>= 0 && curr + 1< n);
            Set(curr+1, 1);
            curr += 2;
        }
    }
    while (curr < n) {
        assert(curr >= 0 && curr < n);
        Set(curr, 0);
        curr++;
    }
}
#include "Brunolib.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const int BITS = 61;
long long Bruno(int N, int A[]){
    ll x = 0;
    vector<bool> sendOn(BITS, false);
    int n = N;
    int curr = 0;
    for (int i = 0; i < n-1; i++) {
        if (A[i] && A[i+1]) {
            sendOn[curr] = false;
            curr+=2;
        }
        else if (A[i]) {
            sendOn[curr] = true;
            curr++;
        }
    }
    for (int i = 0; i < BITS; i++) {
        if (sendOn[i]) {
            x |= (1LL << i);
        }
    }
    return x;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
