递归递推专题:二叉树计数、小路径得分与表达式优化.pdfVIP

  • 0
  • 0
  • 约2.06千字
  • 约 2页
  • 2026-03-06 发布于北京
  • 举报

递归递推专题:二叉树计数、小路径得分与表达式优化.pdf

递归和递推专题

文件名输入文件输出文件时间限制空间限制

Btn.pas/c/cppBtn.inBtn.out1s16MB

Nt.pas/c/cppNt.inNt.out1s40MB

UB.pas/c/cppUB.inUB.out1s1MB

Pt.pas/c/cppPt.inPt.out1s4MB

问题1:BinaryTreeNumber

【问题描述】

由n个节点可组成多少个不同的二叉树?

一个正整数n。

【输出数据】

不同的二叉树的个数。

【样例输入】

1

【样例输出】

1

【注意】

测试数据规模:

保证40%的数据n=35;

保证100%的数据n=5000。

问题二:NumberTriangle

【问题描述】

给定一个具有N层的数学三角形如下图,从顶至底有多条路径,每一步可沿左斜线向

下或沿右斜线向下,路径所经过的数字之和为路径得分,请求出最小路径得分。

2

62

184

1568

第1行,一个正整数n,表示三角形的行数

第2至n+1行,照描述输入三角形

【输出数据】

最小路径得分,行末有换行

【样例输入】

4

2

62

184

1568

【样例输出】

10

【注意】

测试数据规模:

保证100%的数据n1000。

问题三:UnwantedBrackets

【问题描述】

键盘输入一个含有括号的四则运算表达式,可能含有多余的括号,编程整理该表达式,

去掉所有多余的括号,原表达式中所有变量和运算符相对位置保持不变,并保持与原表达式

等价。

例:输入表达式应输出表达式

a+(b+c)a+b+c

(a*b)+c/da*b+c/d

a+b/(c-d)a+b/(c-d)

注意输入a+b时不能输出b+a。

表达式以字符串输入。

所有变量为单个小写字母。只是要求去掉所有多余括号,不要求对表达式化简。

一个字符串,长度不超过255,输入不要判错

【输出数据】

去掉所有多余括号后的表达式

【样例输入】

a+(b+c)

【样例输出】

a+b+c

问题四:PostorderTraversal

【问题描述】

给出一棵二叉树的中序与后序遍历。求出它的先序遍历。(约定树结点用不同的大写字

母表示,长度≤8)。

共两行,分别为一个字符串,第一行为二叉树中序遍历,第二行为二叉树后序遍

文档评论(0)

1亿VIP精品文档

相关文档