Submission #1329793

#TimeUsernameProblemLanguageResultExecution timeMemory
1329793secondaccountmaybeHiperkocka (COCI21_hiperkocka)C++20
0 / 110
1 ms344 KiB
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll n;
vector<ll> v[20];
ll c[20],p[20];
void dfs(ll x,ll o,ll k)
{
	c[x]=k;
	p[x]=o;
	for(auto t:v[x])
	{
		if(t!=o)
		{
			dfs(t,x,1-k);
		}
	}
}
int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	cin>>n;
	for(ll i=0;i<n;i++)
	{
		ll x,y;
		cin>>x>>y;
		v[x].push_back(y);
		v[y].push_back(x);
	}
	dfs(0,-1,0);
	ll m=(1LL<<(n-1));
	cout<<m<<endl;
	for(ll i=0;i<m;i++)
	{
		ll g=i^(i>>1);
		vector<ll>r(n+1);
		for(ll j=0;j<=n;j++)
		{
			ll s=0;
			ll b=g;
			if(c[j]==1)
			{
				b^=(m-1);
			}
			s=(b<<1);
			ll k=0;
			for(ll l=0;l<n-1;l++)
			{
				if((b>>l)&1)
				{
					k^=1;
				}
			}
			s|=k;
			r[j]=s;
		}
		for(ll j=0;j<=n;j++)
		{
			cout<<r[j]<<(j==n?"":" ");
		}
		cout<<endl;
	}
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...