#include "bits/stdc++.h"
#include "messy.h"
// #include "grader.cpp"
using namespace std;
#define SZ(s) (int)s.size()
vector <int> ans;
void f(int l, int r, int n) {
if(l == r) return;
int md = (l + r) / 2;
string s = "";
for(int i = 0; i < n; i++) {
s += '1';
if(l <= i and i <= r) s[i] = '0';
}
for(int i = l; i <= md; i++) {
s[i] = '1';
add_element(s);
s[i] = '0';
}
f(l, md, n), f(md+1, r, n);
}
void f1(int l, int r, int n, vector <int> v) {
if(l == r) {
ans[v.back()] = l;
return;
}
int md = (l + r) / 2;
vector <int> v1, v2;
string s = "";
for(int i = 0; i < n; i++) {
s += '1';
}
for(auto i : v) {
s[i] = '0';
}
for(auto i : v) {
s[i] = '1';
if(check_element(s)) v1.push_back(i);
else v2.push_back(i);
s[i] = '0';
}
f1(l, md, n, v1), f1(md+1, r, n, v2);
}
vector<int> restore_permutation(int n, int w, int r) {
f(0, n-1, n);
compile_set();
vector <int> v;
for(int i = 0; i < n; i++) {
v.push_back(i);
}
ans.resize(n);
f1(0, n-1, n, v);
return ans;
}
컴파일 시 표준 에러 (stderr) 메시지
messy.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
messy_c.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |