# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
981045 | vjudge1 | 참나무 (IOI23_beechtree) | C++17 | 50 ms | 6740 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define rep(a,b,c) for(int a=b; a<c; a++)
#define repr(a,b,c) for(int a=b-1; a>c-1; a--)
#define repa(a,b) for(auto a:b)
#define fi first
#define se second
#define pii pair<int, int>
#define pll pair<ll, ll>
#define ll long long
#define pb push_back
using namespace std;
vector<int> beechtree(int N, int M, vector<int> P, vector<int> C){
vector<int> ans(N);
if(N){
int c;
repr(i,N,0){
if(i==N-1) ans[i]=1;
else{
if(i+2==N) c=C[i+1];
if(C[i+1]!=c) break;
ans[i]=1;
}
}
return ans;
}
vector<int> subt[N];
rep(i,0,N) subt[i].pb(i);
repr(i,N,1) repa(e,subt[i]) subt[P[i]].pb(e);
rep(i,0,N){
sort(subt[i].begin(),subt[i].end());
ans[i]=subt[i].size()==1;
do{
int e, cont;
vector<int> s;
rep(j,1,subt[i].size()){
cont=0;
e=subt[i][j];
repa(f,s) if(f==C[e]) cont++;
if(e==i || P[e]!=subt[i][cont]) break;
if(j==subt[i].size()-1) ans[i]=1;
else s.pb(C[e]);
}
if(ans[i]) break;
}while(next_permutation(subt[i].begin(),subt[i].end()));
}
return ans;
}
Compilation message (stderr)
# | 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... |
# | 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... |