제출 #730251

#제출 시각아이디문제언어결과실행 시간메모리
730251t6twotwo자동 인형 (IOI18_doll)C++17
10 / 100
1 ms300 KiB
#include "doll.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> F(int n) {
    vector<int> a(1 << n), b;
    for (int i = 0; i < (1 << n); i++) {
        int j = 0;
        while(j < (1 << n)) {
            a[j] ^= 1;
            j = 2 * j + 1 - a[j];
        }
        b.push_back(j - (1 << n));
    }
    return b;
}
void create_circuit(int M, vector<int> A) {
    int N = A.size();
    vector<int> C(M + 1, -1), X(15), Y(15);
    for (int i = 0; i < 7; i++) {
        X[i] = -2 * (i + 1);
        Y[i] = -2 * (i + 1) - 1;
    }
    C[0] = A[0];
    auto a = F(3);
    for (int i = 0; i < 8; i++) {
        X[a[i] + 7] = A[i + 1];
    }
    for (int i = 0; i < 7; i++) {
        Y[a[i] + 7] = A[i + 9];
    }
    Y[a[7] + 7] = 0;
    answer(C, X, Y);
}

컴파일 시 표준 에러 (stderr) 메시지

doll.cpp: In function 'void create_circuit(int, std::vector<int>)':
doll.cpp:17:9: warning: unused variable 'N' [-Wunused-variable]
   17 |     int N = A.size();
      |         ^
#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...