
数据结构高分笔记
漂流瓶终结者
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
4940-畅通工程(并查集) ZCMU
Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?Input 测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目M;随后...原创 2018-09-14 21:49:07 · 256 阅读 · 0 评论 -
4936-特殊排序 ZCMU
Description输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。Input输入第一行包括1个整数N,1<=N<=1000,代表输入数据的个数。接下来的一行有N个整数。Output可能有多组测试数据,对于每组数据,第一行输出一个整数,代表N个整数中的最大值,并将此值从数组中去除,将剩下的数进行排序。第二行将排序的结果输出。Sample ...原创 2018-09-19 09:17:30 · 496 阅读 · 0 评论 -
4937-EXCEL排序 ZCMU
DescriptionExcel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。对每个测试用例,首先输出1行“Case i:”,其中 i 是测试用例的编号(从1开始)。随后在 N 行中输出按要求排序后的结果,即:当 C=1 时,按学号递增排序;当 C=2时,按姓名的非递减字典序排序;当 C=3 时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则按他们的学号递增排序...原创 2018-09-19 09:22:15 · 210 阅读 · 0 评论 -
4955-查找最小的k个元素 ZCMU
Description 输入n个正整数(可以有重复的情况出现),输出其中最小的k个(如有重复的情况出现,重复输出),其中1≤k≤n≤10000,每个正整数小于10000。例如输入1、4、8、2、5、7、6、3这8个数字,则最小的4个数字为1、2、3、4。Input 第一行,n和k,用空格隔开。 n个整数,用空格隔开。Output 最小的k个正整数,且从小到大排序,用空格隔开...原创 2018-09-20 11:30:12 · 440 阅读 · 0 评论 -
4954-矩阵对角求和 ZCMU
Description 求一个n×n矩阵对角线元素之和,其中1≤n<100,矩阵元素都小于10000。Input 第一行是一个正整数n。 然后是n行,每行对应矩阵的每行,元素间用空格隔开。Output 第一行为主对角线元素和,第二行为副对角线的元素和。Sample Input35724 1478 93586962 4464 57058145 328...原创 2018-09-20 11:32:21 · 894 阅读 · 0 评论 -
4950-数组排序 ZCMU
Description输入一个数组的值,求出各个值从小到大排序后的次序。Input输入有多组数据。每组输入的第一个数为数组的长度n(1<=n<=10000),后面的数为数组中的值,以空格分割。Output各输入的值按从小到大排列的次序(最后一个数字后面没有空格)。Sample Input168151 70 25 79 59 63 65 6 46...原创 2018-09-20 11:36:38 · 472 阅读 · 0 评论 -
4949-对称矩阵 ZCMU
Description输入一个N维矩阵,判断是否对称。Input输入第一行包括一个数:N(1<=N<=100),表示矩阵的维数。接下来的N行,每行包括N个数,表示N*N矩阵的元素。Output可能有多组测试数据,对于每组数据,输出"Yes!”表示矩阵为对称矩阵。输出"No!”表示矩阵不是对称矩阵。Sample Input16831 70 2...原创 2018-09-20 11:38:41 · 414 阅读 · 0 评论 -
4947-矩阵转置 ZCMU
Description 输入一个N*N的矩阵,将其转置后输出。要求:不得使用任何数组(就地逆置)。Input 输入的第一行包括一个整数N,(1<=N<=100),代表矩阵的维数。 接下来的N行每行有N个整数,分别代表矩阵的元素。Output可能有多组测试数据,对于每组数据,将输入的矩阵转置后输出。Sample Input16831 70 25...原创 2018-09-20 11:40:47 · 268 阅读 · 0 评论 -
4946-矩阵最大值 ZCMU
Description编写一个程序输入一个m*n的矩阵存储并输出,并且求出每行的最大值和每行的总和。要求把每行总和放入每行最大值的位置,如果有多个最大值,取下标值最小的那一个作为最大值。最后将结果矩阵输出。Input输入的第一行包括两个整数m和n(1<=m,n<=100),分别代表矩阵的行和列的维数。接下来的m行每行有n个数,代表矩阵的元素。Output可能有...原创 2018-09-20 11:46:17 · 332 阅读 · 0 评论 -
4942-计算两个矩阵的乘积 ZCMU
Description 计算两个矩阵的乘积,第一个是2*3矩阵,第二个是3*2矩阵,结果为一个2*2矩阵。Input 输入包含多组数据,先输入一个2*3矩阵,再输入一个3*2矩阵。Output 输出两个矩阵的乘积。Sample Input1 1 11 1 11 11 11 1Sample Output3 33 3思路矩阵乘法需再开一个...原创 2018-09-20 11:48:33 · 787 阅读 · 0 评论 -
4941-继续畅通工程(最小生成树 克鲁斯卡尔算法) ZCMU
Description 省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建道路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全省畅通需要的最低成本。Input 测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( 1< N < 1...原创 2018-09-20 11:52:18 · 254 阅读 · 0 评论 -
4939-大整数排序 ZCMU
Description对N个长度最长可达到1000的数进行排序。Input输入第一行为一个整数N,(1<=N<=100)。接下来的N行每行有一个数,数的长度范围为1<=len<=1000。每个数都是一个正数,并且保证不包含前缀零。Output可能有多组测试数据,对于每组数据,将给出的N个数从小到大进行排序,输出排序后的结果,每个数占一行。Samp...原创 2018-09-20 11:55:56 · 299 阅读 · 0 评论 -
4938-字符串内排序
Description输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。Input测试数据有多组,输入字符串。Output对于每组输入,输出处理后的结果。Sample InputtianqinSample OutputaiinnqtHINT注意输入的字符串中可能有空格。思路考虑到字符串中可能有空格,采用gets()读入字...原创 2018-09-20 11:57:53 · 401 阅读 · 0 评论 -
4935-成绩排序 ZCMU
Description 有N个学生的数据,将学生数据按成绩高低排序,如果成绩相同则按姓名字符的字母序排序,如果姓名的字母序也相同则按照学生的年龄排序,并输出N个学生排序后的信息。Input 测试数据有多组,每组输入第一行有一个整数N(N<=1000),接下来的N行包括N个学生的数据。每个学生的数据包括姓名(长度不超过100的字符串)、年龄(整形数)、成绩(小于等于100的正...原创 2018-09-19 09:13:47 · 317 阅读 · 0 评论 -
4930-堆栈的使用 ZCMU
Description 堆栈是一种基本的数据结构。堆栈具有两种基本操作方式,push 和 pop。Push一个值会将其压入栈顶,而 pop 则会将栈顶的值弹出。现在我们就来验证一下堆栈的使用。Input 对于每组测试数据,第一行是一个正整数 n,0<n<=10000(n=0 结束)。而后的 n 行,每行的第一个字符可能是'P’或者'O’或者'A’;如果是'P’,后面还会...原创 2018-09-19 09:10:39 · 219 阅读 · 0 评论 -
4927-剩下的树 ZCMU
Description有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在每个整数坐标点有一棵树,即在0,1,2,...,L共L+1个位置上有L+1棵树。 现在要移走一些树,移走的树的区间用一对数字表示,如 100 200表示移走从100到200之间(包括端点)所有的树。 可能有M(1<=M<=100...原创 2018-09-19 09:07:28 · 211 阅读 · 0 评论 -
4926-还是畅通工程(最小生成树) ZCMU
escription 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。Input 测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( < 100 );...原创 2018-09-14 21:46:22 · 216 阅读 · 0 评论 -
4924-首字母大写 ZCMU
Description 对一个字符串中的所有单词,如果单词的首字母不是大写字母,则把单词的首字母变成大写字母。在字符串中,单词之间通过空白符分隔,空白符包括:空格(' ')、制表符('\t')、回车符('\r')、换行符('\n')。Input 输入一行:待处理的字符串(长度小于100)。Output 可能有多组测试数据,对于每组数据,输出一行:转换后的字符串。S...原创 2018-09-14 21:41:39 · 1302 阅读 · 0 评论 -
4923-字符串的反码 ZCMU
Description 一个二进制数,将其每一位取反,称之为这个数的反码。下面我们定义一个字符的反码。如果这是一个小写字符,则它和字符'a’的距离与它的反码和字符'z’ 的距离相同;如果是一个大写字符,则它和字符'A’的距离与它的反码和字符'Z’的距离相同;如果不是上面两种情况,它的反码就是它自身。 举几个例子,'a’的反码是'z’;'c’的反码是'x’;'W’的反码是'D’;'1’的...原创 2018-09-14 21:39:04 · 579 阅读 · 0 评论 -
4921-字符串连接 ZCMU
Description不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。Input每一行包括两个字符串,长度不超过100。Output可能有多组测试数据,对于每组数据,不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。输出连接后的字符串。Sample Inputabc defSample Outputa...原创 2018-09-14 21:36:29 · 287 阅读 · 0 评论 -
4920-谁是你的潜在朋友 ZCMU
Description “臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男,你发现自己与他人相互了解的机会 并不太多。幸运的是,你意外得到了一份北大图书馆的图书借阅记录,于是你挑灯熬夜地编程,想从中发现潜在的朋友。 首先你对借阅记录进行了一番整理,把N个读者依次编号为1,2,…,N,把M本书依次编号为1,2,…,M。同...原创 2018-09-14 21:35:34 · 295 阅读 · 0 评论 -
4945-字符排序 ZCMU
Description任意输入一个长度不超过20的字符串,对所输入的字符串,按照ASCII码的大小从小到大进行排序,请输出排序后的结果。Input输入第一行为样例数m,接下来m行每行一个字符串,字符串长度不超过20。Output输出m行表示排序完的字符串。Sample Input1dcabSample Outputabcd思路 字符转数字,排序后再...原创 2018-09-18 14:24:47 · 517 阅读 · 0 评论 -
4948-比较字符串 ZCMU
Description输入两个字符串,比较两字符串的长度大小关系。Input输入第一行表示测试用例的个数m,接下来m行每行两个字符串A和B,字符串长度不超过50。Output输出m行。若两字符串长度相等则输出A is equal long to B;若A比B长,则输出A is longer than B;否则输出A is shorter than B。Sample Inpu...原创 2018-09-18 14:26:06 · 378 阅读 · 0 评论 -
4952-姓名排序 ZCMU
Description存储一组姓名,如Apple,Tom,Green,Jack 要求按照字典序排序并显示。Input输入第一行为样例数m,对于每个样例,第一行为人数n,接下来有n个姓名,n不超过10,每个名字长度不超过20。Output对于每个样例输出排序后的结果,每行一个姓名。Sample Input14AppleTomGreenJackSam...原创 2018-09-18 14:27:48 · 842 阅读 · 0 评论 -
4953-整数奇偶排序 ZCMU
Description输入10个整数,彼此以空格分隔。重新排序以后输出(也按空格分隔),要求:1.先输出其中的奇数,并按从大到小排列;2.然后输出其中的偶数,并按从小到大排列。Input任意排序的10个整数(0~100),彼此以空格分隔。Output可能有多组测试数据,对于每组数据,按照要求排序后输出,由空格分隔。Sample Input0 56 19 81 59 ...原创 2018-09-18 14:29:10 · 311 阅读 · 0 评论 -
4956-字符统计 ZCMU
Description输入一行字符串(字符串长度小于10000,由大小写字母、阿拉伯数字和空格组成),分别统计出其中大写英文字母,小写英文字母、阿拉伯数字和空格的个数。Input一行字符串(字符串长度小于10000,由大小写字母、阿拉伯数字和空格组成)Output分别输出大写英文字母,小写英文字母、阿拉伯数字和空格的个数,用空格隔开Sample Inputh0u84nf...原创 2018-09-18 14:30:51 · 467 阅读 · 0 评论 -
4951-字符串排序 ZCMU
Description先输入你要输入的字符串的个数。然后换行输入该组字符串。每个字符串以回车结束,每个字符串少于一百个字符。如果在输入过程中输入的一个字符串为“stop”,也结束输入。然后将这输入的该组字符串按每个字符串的长度,由小到大排序,按排序结果输出字符串。Input字符串的个数,以及该组字符串。每个字符串以‘\n’结束。如果输入字符串为“stop”,也结束输入.Outp...原创 2018-09-19 08:56:42 · 459 阅读 · 0 评论 -
4922-后缀子串排序 ZCMU
Description对于一个字符串,将其后缀子串进行排序,例如grain其子串有:grainrainaininn然后对各子串按字典顺序排序,即:ain,grain,in,n,rainInput每个案例为一行字符串。Output将子串排序输出Sample InputgrainbananaSample Outputaingrainin...原创 2018-09-19 09:03:58 · 596 阅读 · 0 评论