第一范文网 - 专业文章范例文档资料分享平台

2007-2011年noip初赛提高组试题及答案

来源:用户分享 时间:2025/7/5 20:42:31 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

end.

2. (笛卡尔树)对于一个给定的两两不等的正整数序列,笛卡尔树是这样的一棵二叉树:首先,它是一个最小堆,即除了根结点外,每个结点的权值都大于父节点的权值;其次,它的中序遍历恰好就是给定的序列。例如,对于序列7、2、12、1、10、5、15、3,下图就是一棵对应的笛卡尔树。现输入序列的规模n(1≤n<100)和序列的n个元素,试求其对应的笛号尔树的深度d(根节点深度为1),以及有多少个叶节点的深度为d。 const

SIZE = 100;

INFINITY = 1000000; var

n, maxDeep, num, i : integer; a : array[1..SIZE] of integer;

procedure solve(1eft, right, deep : integer); var

i, j, min : integer; begin

if deep > maxDeep then begin

maxDeep := deep; num := 1; end

else if deep = maxDeep then ___①___;

min := INFINITY;

for i := 1eft to right do if min > a[i] then begin

min := a[i]; ___②___; end;

if left < j then ___③___;

if j < right then

___④___; end; begin readln(n);

for i := 1 to n do read(a[i]); maxDeep := 0; solve(1, n, 1);

writeln(maxDeep, end.

’, num); ‘

搜索更多关于: 2007-2011年noip初赛提高组试题及答案 的文档
2007-2011年noip初赛提高组试题及答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c36mpr6bhus7zlrl1b2xb_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top