hdu1100
来源:互联网 发布:用什么看网络电视好 编辑:程序博客网 时间:2024/05/29 04:46
给你二叉树树的标号,画出这颗二叉树。如2号树应该画成x(x)
思想:dfs(m,n)表示m个节点的第n棵树。然后递归下去做。直到dfs(1,1),直接输出X
#include <iostream>#include <cstdio>#include <cstring>using namespace std;int ct[19]= {1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,742900,2674440,9694845,35357670,129644790,477638700};void dfs(int m,int n){ if(m==1&&n==1) { printf("X"); return; } int a=0,b=m-1; while(b>=0&&n>ct[a]*ct[b]) { n-=ct[a]*ct[b]; a++; b--; } if(a!=0) { printf("("); dfs(a,n%ct[b]==0?n/ct[b]:n/ct[b]+1); printf(")"); } printf("X"); if(b!=0) { printf("("); dfs(b,n%ct[b]==0?ct[b]:n%ct[b]); printf(")"); }}int main(){ int n; while(scanf("%d",&n),n) { int m=1; while(n>ct[m]) { n-=ct[m]; m++; } dfs(m,n); printf("\n"); } return 0;}
0 0
- hdu1100
- hdu1100
- pku1095&&hdu1100
- hdu1100 Trees Made to Order
- hdu1100:Trees Made to Order
- hdu1100(二叉树形状)
- 第7周作业1——背包问题
- hadoop
- Talend Operations
- 计算两地距离多少公里或者英里
- iOS应用程序状态切换相关
- hdu1100
- MIPI DSI协议介绍
- sstab 保存后的读取问题
- NSURLConnection实现HTTPS(SSL)链接请求
- 贫农的大数据之二(Kafka)
- myeclipse中java代码注释模板问题
- UIView动画(过渡效果)的学习笔记
- 如何快速查找电脑中的文件
- Windows 下 web.py上传图片乱码的解决办法