제출 #578503

#제출 시각아이디문제언어결과실행 시간메모리
578503alireza_kavianiBroken Device (JOI17_broken_device)C++17
85 / 100
35 ms2556 KiB
#include "Annalib.h"
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

const ll LOG = 60;
const ll MAXN = 150;


void Anna(int N, ll x, int K, int P[]){
    vector<int> mark(MAXN , 0);
    for(int i = 0 ; i < K ; i++){
        mark[P[i]] = 1;
    }
    for(int i = 0 ; i < N ; i += 2){
        if(mark[i] || mark[i + 1]){
            Set(i , 0);
            Set(i + 1 , 0);
            continue;
        }
        if(x % 3 == 0){
            Set(i , 1);
            Set(i + 1 , 0);
        }
        if(x % 3 == 1){
            Set(i , 0);
            Set(i + 1 , 1);
        }
        if(x % 3 == 2){
            Set(i , 1);
            Set(i + 1 , 1);
        }
        x /= 3;
    }
}
#include "Brunolib.h"
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

const ll LOG = 60;
const ll MAXN = 150;

long long Bruno(int N, int A[]){
    ll ans = 0 , val = 1;
    for(int i = 0 ; i < N ; i += 2){
        if(A[i] == 0 && A[i + 1] == 0){
            continue;
        }
        ans += (A[i] + A[i + 1] * 2 - 1) * val;
        val *= 3;
    }
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...