# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1063246 | De3b0o | Beech Tree (IOI23_beechtree) | C++17 | 2094 ms | 31112 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 "beechtree.h"
#include<bits/stdc++.h>
#include<random>
#define ll long long
#define F first
#define S second
#define in insert
#define pb push_back
#define ppb pop_back()
#define d3 ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define cans cout << ans << "\n";
#define yes cout << "Yes" << "\n";
#define no cout << "No" << "\n";
#define pll pair<ll,ll>
#define lin cout << "\n";
#define sqr 340
#define mod 1000000007
#define mid ((l+r)/2)
#define lc (2*x)
#define rc (2*x+1)
#define sq 547
using namespace std;
vector<ll> adj[200009];
ll n , m;
ll p[200009] , c[200009];
vector<ll> v;
void dfs(ll x , ll pr)
{
v.pb(x);
for(auto it : adj[x])
{
if(it==pr)
continue;
dfs(it,x);
}
}
std::vector<int> beechtree(int N, int M, std::vector<int> P, std::vector<int> C)
{
n=N;
m=M;
for(int i = 1 ; n>i ; i++)
{
adj[i].pb(P[i]);
adj[P[i]].pb(i);
}
for(int i = 0 ; n>i ; i++)
{
p[i]=P[i];
c[i]=C[i];
}
vector<int> ans;
for(int i = 0 ; n>i ; i++)
{
v.clear();
dfs(i,p[i]);
bool g = 0;
sort(v.begin(),v.end());
do
{
if(v[0]!=i)
continue;
bool gg = 1;
for(int j = 1 ; v.size()>j ; j++)
{
ll x = 0;
for(int h = 1 ; j>h ; h++)
{
if(c[v[h]]==c[v[j]])
x++;
}
if(p[v[j]]!=v[x])
gg=0;
}
if(gg)
g=1;
}
while(next_permutation(v.begin(),v.end()));
ans.pb(g);
}
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... |