《关于我样例没过但是A了这档事》
查看原帖
《关于我样例没过但是A了这档事》
678867
Ke9_qux楼主2022/8/16 18:09

样例4,输出5。

#include <cstdio>
#define max(a,b) a>b?a:b

struct node {
	int left,right;
};

int n,t1,t2,res;
node a[1000001];
int dpth[1000001];

void dfs(node s,int d) {
	res=max(res,d);
	if(dpth[s.left]==0) {
		dpth[s.left]=d+1;
		dfs(a[s.left],d+1);
	}
	if(dpth[s.right]==0) {
		dpth[s.right]=d+1;
		dfs(a[s.right],d+1);
	}
}

int main() {
	scanf("%d",&n);
	for(int i=1;i<=n;i++) {
		scanf("%d%d",&t1,&t2);
		a[i]={t1,t2};
	}
	dfs(a[1],1);
	printf("%d",res);
	return 0;
}

记录

2022/8/16 18:09
加载中...