제출 #860967

#제출 시각아이디문제언어결과실행 시간메모리
860967BlancaHMCoins (IOI17_coins)C++14
100 / 100
8 ms1700 KiB
#include "coins.h"
using namespace std;

vector<int> coin_flips(vector<int> b, int c) {
    vector<int> flips;
    // Encontramos primero el XOR de los indices i tales que b[i] = 1
    int val = 0;
    for (int i = 0; i < 64; i++) {
        if (b[i] == 1) {
            val ^= i;
        }
    }
    // Giramos una moneda para que este XOR sea c
    // val XOR x = c
    // val XOR val XOR x = val XOR c
    // x = val XOR c = c XOR val
    flips.push_back(val ^ c);
    return flips;
}
 
int find_coin(vector<int> b) {
    // Encontramos el XOR de los indices i tales que b[i] = 1
    int val = 0;
    for (int i = 0; i < 64; i++) {
        if (b[i] == 1)
            val ^= i;
    }
    return val;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...