自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 信息学奥赛一本通c++ 1369:合并果子(fruit)

【题目描述】在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n−1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重量都为1。

2024-05-15 22:34:16 201

原创 信息学奥赛一本通c++ 1367:查找二叉树(tree_a)代码

【题目描述】已知一棵二叉树用邻接表结构存储,中序查找二叉树中值为x的结点,并指出是第几个结点。例:如图二叉树的数据文件的数据格式如下:【输入】第一行n为二叉树的结点个树,n<=100;第二行x表示要查找的结点的值;以下第一列数据是各结点的值,第二列数据是左儿子结点编号,第三列数据是右儿子结点编号。【输出】一个数即查找的结点编号。【输入样例】【输出样例】4。

2024-05-14 22:27:57 151

原创 信息学奥赛一本通c++ 1366:二叉树输出(btout)

【题目描述】树的凹入表示法主要用于树的屏幕或打印输出,其表示的基本思想是兄弟间等长,一个结点的长度要不小于其子结点的长度。二叉树也可以这样表示,假设叶结点的长度为1,一个非叶结点的长度等于它的左右子树的长度之和。一棵二叉树的一个结点用一个字母表示(无重复),输出时从根结点开始:每行输出若干个结点字符(相同字符的个数等于该结点长度),如果该结点有左子树就递归输出左子树;如果该结点有右子树就递归输出右子树。

2024-05-14 21:16:03 212

原创 信息学奥赛一本通c++ 1170:计算2的N次方

时间限制: 1000 ms 内存限制: 65536 KB任意给定一个正整数NN<=100,计算2的n次方的值。输入一个正整数N。输出2的N次方的值。532。

2024-05-11 20:42:17 236

原创 信息学奥赛一本通c++ 1169:大整数减法

【题目描述】求两个大的正整数相减的差。【输入】共2行,第1行是被减数a,第2行是减数b(a > b)。每个大整数不超过200位,不会有多余的前导零。【输出】一行,即所求的差。【输入样例】【输出样例】

2024-05-11 20:36:24 92

原创 信息学奥赛一本通c++ 1309:【例1.6】回文数(Noip1999)

时间限制: 1000 ms 内存限制: 65536 KB【题目描述】若一个数(首位不为零)从左向右读与从右向左读都是一样,我们就将其称之为回文数。例如:给定一个 10进制数 56,将 56加 65(即把56从右向左读),得到 121是一个回文数。又如,对于10进制数87,STEP1:8778165STEP2:165561726STEP3:7266271353135335314884。

2024-05-08 21:48:17 778

原创 信息学奥赛一本通c++ 1308:【例1.5】高精除题解

时间限制: 1000 ms 内存限制: 65536 KB【题目描述】高精除以高精,求它们的商和余数。【输入】输入两个低于300位的正整数。【输出】输出商和余数。【输入样例】【输出样例】

2024-05-07 20:25:44 218

原创 信息学奥赛一本通c++ 1307:【例1.3】高精度乘法

【题目描述】输入两个高精度正整数M和N(M和N均小于100位)。求这两个高精度数的积。【输入】输入两个高精度正整数M和N。【输出】求这两个高精度数的积。【输入样例】363【输出样例】108。

2024-05-06 22:30:43 273

原创 信息学奥赛一本通 c++ 1365: FBI树(fbi)

FBI树是一种二叉树,它的结点类型也包括F结点,B结点和I结点三种。若串S的长度大于1,将串S从中间分开,分为等长的左右子串S1和S2;由左子串S1构造R的左子树T1,由右子串S2构造R的右子树T2。我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。现在给定一个长度为2N的“01”串,请用上述构造方法构造出一棵FBI树,并输出它的后序遍历序列。第一行是一个整数N(0≤N≤10),第二行是一个长度为2N的“01”串。

2024-05-05 18:41:20 194

原创 信息学奥赛一本通c++ 二叉树遍历(flist) 题解

int main(int argc, const char * argv[]){//int argc, const char * argv[]是标准主函数中的参数。树和二叉树基本上都有先序、中序、后序、按层遍历等遍历顺序,给定中序和其它一种遍历的序列就可以确定一棵二叉树的结构。两行,每行是由字母组成的字符串(一行的每个字符都是唯一的),分别表示二叉树的中序遍历和按层遍历的序列。假定一棵二叉树一个结点用一个字符描述,现在给出中序和按层遍历的字符串,求该树的先序遍历字符串。一行,表示二叉树的先序序列。

2024-05-04 13:39:48 841

原创 信息学奥赛一本通 c++ 1363:小球(drop)

【题目描述】许多的小球一个一个的从一棵满二叉树上掉下来组成FBT(Full Binary Tree,满二叉树),每一时间,一个正在下降的球第一个访问的是非叶子节点。然后继续下降时,或者走右子树,或者走左子树,直到访问到叶子节点。决定球运动方向的是每个节点的布尔值。最初,所有的节点都是false,当访问到一个节点时,如果这个节点是false,则这个球把它变成true,然后从左子树走,继续它的旅程。如果节点是true,则球也会改变它为false,而接下来从右子树走。

2024-05-02 14:54:31 357

原创 信息学奥赛一本通 1340:【例3-5】扩展二叉树

【题目描述】由于先序、中序和后序序列中的任一个都不能唯一确定一棵二叉树,所以对二叉树做如下处理,将二叉树的空结点用·补齐,如图所示。我们把这样处理后的二叉树称为原二叉树的扩展二叉树,扩展二叉树的先序和后序序列能唯一确定其二叉树。现给出扩展二叉树的先序序列,要求输出其中序和后序序列。【输入】扩展二叉树的先序序列。【输出】输出其中序和后序序列。【输入样例】【输出样例】DBFEGACDFGEBCA。

2024-05-02 10:52:10 22

原创 信息学奥赛一本通 c++ 1339:【例3-4】求后序遍历

【题目描述】输入一棵二叉树的先序和中序遍历序列,输出其后序遍历序列。【输入】共两行,第一行一个字符串,表示树的先序遍历,第二行一个字符串,表示树的中序遍历。树的结点一律用小写字母表示。【输出】一行,表示树的后序遍历序列。【输入样例】abdecdbeac【输出样例】debca。

2024-05-02 07:46:34 19

原创 信息学奥赛一本通 1338:【例3-3】医院设置

【题目描述】设有一棵二叉树(如下图),其中圈中的数字表示结点中居民的人口,圈边上数字表示结点编号。现在要求在某个结点上建立一个医院,使所有居民所走的路程之和为最小,同时约定,相邻结点之间的距离为11。就本图而言,若医院建在11处,则距离和;若医院建在33处,则距离和……【输入】第一行一个整数n𝑛,表示树的结点数(接下来的n𝑛行每行描述了一个结点的状况,包含三个整数,整数之间用空格(一个或多个)分隔,其中:第一个数为居民人口数;第二个数为左链接,为00表示无链接;

2024-05-01 10:47:26 128 1

原创 信息学奥赛一本通 【3.2】单词查找树题解

从根节点到某一节点,路径上经过的字母依次连起来所构成的字母序列,称为该节点对应的单词。单词列表中的每个词,都是该单词查找树某个节点所对应的单词;在进行文法分析的时候,通常需要检测一个单词是否在我们的单词列表里。一个单词列表,每一行仅包含一个单词。我们为了不枚举所有字符串找差异最小的,我们可以用 sort 来排序,使相邻两个字符串的差异最小。对一个确定的单词列表,请统计对应的单词查找树的节点数(包括根节点)该整数为单词列表对应的单词查找树的节点数。例:图一的单词列表对应图二的单词查找树。

2024-04-30 21:08:23 279 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除