嗯...

题目链接:https://www.luogu.org/problem/P5018

其实这道题直接搜索就可以搜满分:

首先递归把每个点作为根节点的儿子的数量初始化出来,然后看这个节点作为根节点的那棵子树是不是对称的,然后在对称的子树中记录最大值。

AC代码:

 #include<cstdio>
#include<iostream> using namespace std; struct node{
int l, r, v, len;
node() {l = -; r = -;}
} e[]; int n, ans; inline int dfs(int k){
e[k].len = ;
if(e[k].l != -) e[k].len += dfs(e[k].l);
if(e[k].r != -) e[k].len += dfs(e[k].r);
return e[k].len;
}//初始化子树大小 inline bool check(int ls, int rs){
bool p = ;
if(e[ls].v != e[rs].v) return false;
if((e[ls].l != - && e[rs].r == -) || (e[ls].l == - && e[rs].r != -) || (e[ls].r != - && e[rs].l == -) || (e[ls].r == - && e[rs].l != -)) return false;
if(e[ls].l != - && e[rs].r != -) p = p & check(e[ls].l, e[rs].r);
if(e[ls].r != - && e[rs].l != -) p = p & check(e[ls].r, e[rs].l);
return p;
}//判断是否对称 int main(){
scanf("%d", &n);
for(int i = ; i <= n; i++) scanf("%d", &e[i].v);
for(int i = ; i <= n; i++) scanf("%d%d", &e[i].l, &e[i].r);
dfs();
for(int i = ; i <= n; i++)
if(check(e[i].l, e[i].r)) ans = max(ans, e[i].len);
printf("%d\n", ans);
return ;
}

AC代码

最新文章

  1. postman 断言解析
  2. 未能加载文件或程序集“XXX”或它的某一个依赖项。参数错误。 (异常来自 HRESULT:0x80070057 (E_INVALIDARG))
  3. oracle 模糊查询中的转义字符用法
  4. POJ 2184 01背包+负数处理
  5. NYOJ 61传纸条(一) 双线程DP问题
  6. paper 60 :转载关于视觉SCI期刊
  7. 《易货》Alpha版本项目展示
  8. 教你怎么把安卓应用软件放到系统根目录system/app下
  9. jquery validation 简单验证手机号码
  10. 2014年1月9日 Oracle常见授权与权限回收[转]
  11. Life is short, you need Python
  12. 摘要算法CRC8、CRC16、CRC32,MD2 、MD4、MD5,SHA1、SHA256、SHA384、SHA512,RIPEMD、PANAMA、TIGER、ADLER32
  13. HTTP基础知识(二)
  14. C# Split用法
  15. hibernate的一级和二级缓存
  16. MyBatis入门2
  17. Codeforces Round #525 (Div. 2) C. Ehab and a 2-operation task
  18. Python换行符问题:\r\n还是\n?
  19. vue-cli keep-alive用法以及activated,deactivated
  20. 【poj2396】 Budget

热门文章

  1. MyEclipse 安装及激活教程
  2. 一看就会一做就废系列:说说 RECOVER UNTIL CANCEL
  3. rancher版本问题引发的节点注册失败失败
  4. 3.创建springboot程序
  5. 题解【CJOJ1070/UVA】嵌套矩形
  6. 并发队列 ConcurrentLinkedQueue 及 BlockingQueue 接口实现的四种队列
  7. Java 字符串、数值与16进制相互转化
  8. drc实现
  9. stm32f103中freertos的tasks基本使用案例及备忘
  10. web前端-基础篇