![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法
算法记录
ice_bear221
这个作者很懒,什么都没留下…
展开
-
L2-005 集合相似度
题目给定两个整数集合,它们的相似度定义为:Nc/Nt×100%。其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数。你的任务就是计算任意一对给定集合的相似度。输入格式:输入第一行给出一个正整数N(≤50),是集合的个数。随后N行,每行对应一个集合。每个集合首先给出一个正整数M(≤10 4),是集合中元素的个数;然后跟M个[0,10 9]区间内的整数。之后一行给出一个正整数K(≤2000),随后K行,每行对应一对需要计算相似度的集合的编号(集合从1到N编号)。数字间以空格分原创 2022-04-04 14:22:55 · 106 阅读 · 0 评论 -
L2-008 最长对称子串
题目对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定Is PAT&TAP symmetric?,最长对称子串为s PAT&TAP s,于是你应该输出11。输入格式:输入在一行中给出长度不超过1000的非空字符串。输出格式:在一行中输出最长对称子串的长度。输入样例:Is PAT&TAP symmetric?输出样例:11解题思路以字符串中任意位置i作为对称轴,比对对称轴两边的字符str[i - j]和str[i + j](当对称子串的字符数量为偶数原创 2022-04-04 13:49:42 · 125 阅读 · 0 评论 -
7-7 古风排版
中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。输入格式:输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。输出格式:按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)。输入样例:4This is a test case输出样例:asa Tst ihe tsice s思路注:从左至右,依次为第一行、第二行…每列 n 字符,输出即为 n 行。如果输入的字原创 2020-08-08 22:05:35 · 237 阅读 · 0 评论 -
[SNOI2019]字符串
题目思路解释1 、压缩字符串2 、判断字符与后一个字符的关系if a[i]>a[i+1],去掉a[i]后,新字符串变小,所以a[i]字符的位置应该排在前面反之,新字符串变大,a[i]字符的位置应排在后面3 、输出结果数组的值原始字符串数组:a,压缩处理后的字符串数组:b,字符位置数组:bb字符串内的每一个字符都会被去掉,从而组成新的字符串,因此每一个字母对应的下标都应放在合适的位置。考虑到字符串内可能有连续的相同字符,需要重新处理原始的字符串,即对字符串进行压缩,同时原始字符串字符原创 2020-07-19 14:29:02 · 610 阅读 · 0 评论 -
7-38 还原二叉树 (25分)
7-38 还原二叉树 (25分)给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。输入格式:输入首先给出正整数N(≤50),为树中结点总数。下面两行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区别大小写)的字符串。输出格式:输出为一个整数,即该二叉树的高度。输入样例:9ABDFGHIECFDHGIBEAC输出样例:5#include<iostream>#include<cstdio> #include<malloc原创 2020-08-16 11:05:09 · 136 阅读 · 0 评论 -
7-42 搜索树判断
7-42 搜索树判断 (25分)对于二叉搜索树,我们规定任一结点的左子树仅包含严格小于该结点的键值,而其右子树包含大于或等于该结点的键值。如果我们交换每个节点的左子树和右子树,得到的树叫做镜像二叉搜索树。现在我们给出一个整数键值序列,请编写程序判断该序列是否为某棵二叉搜索树或某镜像二叉搜索树的前序遍历序列,如果是,则输出对应二叉树的后序遍历序列。输入格式:输入的第一行包含一个正整数N(≤1000),第二行包含N个整数,为给出的整数键值序列,数字间以空格分隔。输出格式:输出的第一行首先给出判断结果原创 2020-08-16 20:50:28 · 330 阅读 · 0 评论 -
7-15 List Leaves
7-15 List Leaves (25分)Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specification:Each input file contains one test case. For each case, the first line gives a positive integer N (≤10) which is t原创 2020-08-16 22:21:06 · 70 阅读 · 0 评论 -
7-75 玩转二叉树
7-75 玩转二叉树 (25分)给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其中序遍历序列。第三行给出其前序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树反转后的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:71 2 3 4 5 6 74 1 3 2 6原创 2020-08-16 22:47:11 · 717 阅读 · 0 评论 -
P2008 大朋友的数字
题目描述有一批大朋友(年龄15岁以上),他们每人手上拿着一个数字,当然这个数字只有1位,也就是0到9之间。每个大朋友的分数为在他之前的最长不下降子序列中所有数之和。(这个序列必须以它作为结尾!)如有多个最长不下降子序列,那么取编号字典序最小的。现在告诉你有n个大朋友,以及他们各自的数字,请你求出他们每个人的分数。输入格式第一行,1个数n。第二行,n个数,分别表示每个人的数字。输出格式一行,n个数,分别表示每个人的分数。输入输出样例【输入输出样例1】输入51 2 5 3 4输出1 3原创 2020-08-07 10:41:19 · 360 阅读 · 0 评论 -
P2800 又上锁妖塔 dp
题目锁妖塔的建造很特别,塔总共有n层,但是高度却不相同,这造成了小A爬过每层的时间也不同.小A会用仙术,每用一次可以让他向上跳一层或两层,但是每次跳跃后小A都将用完灵力,必须爬过至少一层才能再次跳跃(你可以认为小A需要跳两次一层才休息),小A想用最短的时间爬到塔顶,可是他不能找到时间最短的方案,所以请你帮他找到一个时间最短的方案让他爬到塔顶,小A只关心时间,所以你只要告诉他最短时间是多少就可以了.你可以最后跳到塔外即超过塔高.输入格式第一行一个数n (n<=1000000),表示塔的层数.第二原创 2020-08-07 20:29:24 · 190 阅读 · 0 评论 -
L2-007 家庭房产
题目给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数、人均房产面积及房产套数。输入格式:输入第一行给出一个正整数N(≤1000),随后N行,每行按下列格式给出一个人的房产:编号 父 母 k 孩子1 ... 孩子k 房产套数 总面积其中编号是每个人独有的一个4位数的编号;父和母分别是该编号对应的这个人的父母的编号(如果已经过世,则显示-1);k(0≤k≤5)是该人的子女的个数;孩子i是其子女的编号。输出格式:首先在第一行输出家庭个数(所有有亲属关系的人都属于同一个家庭)。随后按原创 2022-04-04 11:14:16 · 232 阅读 · 0 评论