답안 #634483

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
634483 2022-08-24T13:21:01 Z inksamurai Poklon (COCI17_poklon7) C++17
0 / 120
315 ms 111488 KB
#include <bits/stdc++.h>
#define int ll
using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)
#define rng(i,c,n) for(int i=c;i<n;i++)
#define per(i,n) for(int i=n-1;i>=0;i--)
#define fi first
#define se second
#define pb push_back
#define sz(a) (int)a.size()
#define vec(...) vector<__VA_ARGS__>
#define _3PGDklf ios::sync_with_stdio(0),cin.tie(0)
typedef long long ll;
using pii=pair<int,int>;
using vi=vector<int>;
void print(){cout<<'\n';}
template<class h,class...t>
void print(const h&v,const t&...u){cout<<v<<' ',print(u...);}
// e

signed main(){
_3PGDklf;
	int n;
	cin>>n;
	vec(vi) adj(n);
	rep(i,n){
		int ul,ur;
		cin>>ul>>ur;
		adj[i].pb(ul);
		adj[i].pb(ur);
	}
	auto bintostr=[&](int v){
		string s="";
		if(v==0) return s="0";
		while(v){
			s+=(char)(v%2+'0');
			v/=2;
		}
		reverse(s.begin(), s.end());
		return s;
	};
	vi cntr(n);
	vec(string) rbe(n);
	auto dfs=[&](auto self,int v)->void{
		int ma=-1;
		rep(i,sz(adj[v])){
			int u=adj[v][i];
			if(i==0){
				if(u>0){
					self(self,u-1);
				}else{
					ma=max(ma,-u);
				}
			}else{
				if(u>0){
					self(self,u-1);
				}else{
					ma=max(ma,-u);
				}
			}
		}
		cntr[v]=v;
		if(ma>=0) rbe[v]=bintostr(ma);
		int ul=cntr[adj[v][0]<=0?v:adj[v][0]-1];
		int ur=cntr[adj[v][1]<=0?v:adj[v][1]-1];
		cntr[v]=ul;
		if(sz(rbe[ul])<sz(rbe[ur]) or (sz(rbe[ul])==sz(rbe[ur]) and rbe[ul]<rbe[ur])){
			cntr[v]=ur;
		}
		rbe[cntr[v]]+="0";
	};
	// dfs(dfs,0);
	print(rbe[cntr[0]]);
}

Compilation message

poklon.cpp: In function 'int main()':
poklon.cpp:44:7: warning: variable 'dfs' set but not used [-Wunused-but-set-variable]
   44 |  auto dfs=[&](auto self,int v)->void{
      |       ^~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Incorrect 0 ms 212 KB Output isn't correct
3 Incorrect 1 ms 212 KB Output isn't correct
4 Incorrect 1 ms 232 KB Output isn't correct
5 Incorrect 1 ms 212 KB Output isn't correct
6 Incorrect 1 ms 212 KB Output isn't correct
7 Incorrect 1 ms 212 KB Output isn't correct
8 Incorrect 1 ms 340 KB Output isn't correct
9 Incorrect 1 ms 340 KB Output isn't correct
10 Incorrect 1 ms 340 KB Output isn't correct
11 Incorrect 4 ms 1236 KB Output isn't correct
12 Incorrect 6 ms 1412 KB Output isn't correct
13 Incorrect 16 ms 4988 KB Output isn't correct
14 Incorrect 32 ms 9576 KB Output isn't correct
15 Incorrect 36 ms 9672 KB Output isn't correct
16 Incorrect 117 ms 31896 KB Output isn't correct
17 Incorrect 289 ms 74640 KB Output isn't correct
18 Incorrect 253 ms 75484 KB Output isn't correct
19 Incorrect 311 ms 94240 KB Output isn't correct
20 Incorrect 315 ms 111488 KB Output isn't correct