Submission #1186997

#TimeUsernameProblemLanguageResultExecution timeMemory
1186997anmattroiMachine (IOI24_machine)C++17
10 / 100
3 ms440 KiB
#include "machine.h"
#include <bits/stdc++.h>

using namespace std;

vector<int> find_permutation(int N) {
    if (N&1) {
        vector<int> a(N);
        iota(a.begin(), a.end(), 0);
        vector<int> b = use_machine(a);

        int cnt[20];
        fill(cnt, cnt+20, 0);

        for (int i = 0; i < N; i++)
            for (int j = 0; j < 20; j++) cnt[j] += (b[i]>>j&1);
        for (int i = 0; i < N; i++)
            for (int j = 0; j < 20; j++) cnt[j] -= (a[i]>>j&1);

        int X = 0;
        for (int i = 0; i < 20; i++)
            if (cnt[i]) X += (1<<i);
        for (int i = 0; i < N; i++) b[i] ^= X;
        return b;
    }
}

Compilation message (stderr)

machine.cpp: In function 'std::vector<int> find_permutation(int)':
machine.cpp:26:1: warning: control reaches end of non-void function [-Wreturn-type]
   26 | }
      | ^
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...