#include <vector>
#include "messy.h"
#include<bits/stdc++.h>
using namespace std;
#define all(v) v.begin(),v.end()
#define pb push_back
std::vector<int> restore_permutation(int n, int w, int r) {
auto f = [&](int i){
string s = string(n,'0');
for(int j = 0;j<=i;j++) s[j] = '1';
return s;
};
vector<int> p(n,-1);
for(int i = 0;i<n;i++){
add_element(f(i));
}
compile_set();
bool visited[n];memset(visited,false,sizeof(visited));
vector<int> kn;
for(int i = n-1;i>=0;i--){
string s = string(n,'1');
for(auto x : kn){
s[x] = '0';
}
for(int j = 0;j<n;j++){
if(visited[j]) continue;
string t = s;
t[j] = '0';
if(check_element(t)){
//this means p[j] = i
p[j] = i;
kn.pb(j);
visited[j] = 1;
continue;
}
}
}
memset(visited,false,sizeof(visited));
for(auto x : p) if(x!=-1) visited[x] = 1;
for(int i = 0;i<n;i++) if(visited[i]==0) p[n-1] = i;
return p;
}
컴파일 시 표준 에러 (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... |