info: { blogIcon: 'https://cdn.luogu.com.cn/upload/usericon/765493.png', blogUser: 'OIerBoy', blogAvatar: 'https://cdn.luogu.com.cn/upload/usericon/765493.png', blogStartDate: '2023-04-22', webpageTitleOnblur: '(o?v?)ノ Hi', webpageTitleOnblurTimeOut: 1000, webpageTitleFocus: '(*′?`*) 欢迎回来!', webpageTitleFocusTimeOut: 1000, webpageIcon: "https://cdn.jsdelivr.net/gh/BNDong/Cnblogs-Theme-SimpleMemory@master/img/webp/blog_logo.webp", { enable: true, // 是否开启日/夜间模式切换按钮 auto: { // 自动切换相关配置 enable: false, // 开启自动切换 dayHour: 5, // 日间模式开始时间,整数型,24小时制 nightHour: 19 // 夜间模式开始时间,整数型,24小时制 } } },

[CF9D]How many trees?

2023-06-01

题目

题目传送门

难度&重要性(1~10):5

题目来源

Codeforces,luogu

题目算法

dp

解题思路

深度最大为 n(1n35) 的二叉树暴力枚举显然不行,考虑dp。
fi,j 表示有 i 个节点时,深度不大于 j 的二叉树数量。
答案容斥:fn,nfn,h1
这里,我们可以枚举 i1 的左右儿子数量的状况来转移:

fi,j=k=0ifk,j1fik1,j1

注意,这里我们要先枚举 j,再枚举 i,以保证前面的状态都已经枚举过。

完成状态

已完成

posted @   OIerBoy  阅读(6)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示