
陈越PTA训练
文章平均质量分 71
viV_ibeea
我会陪着你,你不要太紧张。
展开
-
PTA KMP 串的模式匹配
PTA KMP 串的模式匹配给定两个由英文字母组成的字符串 String 和 Pattern,要求找到 Pattern 在 String 中第一次出现的位置,并将此位置后的 String 的子串输出。如果找不到,则输出“Not Found”。本题旨在测试各种不同的匹配算法在各种数据情况下的表现。各组测试数据特点如下:输出格式:对每个 Pattern,按照题面要求输出匹配结果。输入样例:abcabcabcabcacabxy3abcabcacabcabcabcdabcabcabcabcac原创 2021-08-26 15:00:50 · 1274 阅读 · 0 评论 -
PTA 11-散列4 Hashing - Hard Version
PTA 11-散列4 Hashing - Hard Version文章目录PTA 11-散列4 Hashing - Hard Version思路CodeGiven a hash table of size N, we can define a hash function H(x)=x%N. Suppose that the linear probing is used to solve collisions, we can easily obtain the status of the hash tab原创 2021-08-25 16:26:39 · 164 阅读 · 0 评论 -
PTA 11-散列3 QQ帐户的申请与登陆
PTA 11-散列3 QQ帐户的申请与登陆文章目录PTA 11-散列3 QQ帐户的申请与登陆注意Code实现QQ新帐户申请和老帐户登陆的简化版功能。最大挑战是:据说现在的QQ号码已经有10位数了。输入格式:输入首先给出一个正整数N(≤105),随后给出N行指令。每行指令的格式为:“命令符(空格)QQ号码(空格)密码”。其中命令符为“N”(代表New)时表示要新申请一个QQ号,后面是新帐户的号码和密码;命令符为“L”(代表Login)时表示是老帐户登陆,后面是登陆信息。QQ号码为一个不超过10位、原创 2021-08-25 11:31:31 · 374 阅读 · 0 评论 -
PTA11-散列2 Hashing
PTA11-散列2 Hashing文章目录PTA11-散列2 Hashing思路CodeThe task of this problem is simple: insert a sequence of distinct positive integers into a hash table, and output the positions of the input numbers. The hash function is defined to be H(key)=key%TSize where TS原创 2021-08-25 11:12:16 · 234 阅读 · 0 评论 -
PTA 11-散列1 电话聊天狂人
PTA 11-散列1 电话聊天狂人文章目录PTA 11-散列1 电话聊天狂人思路Code给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数N(≤10^5 ),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。输出格式:在一行中给出聊天狂人的手机号码及其通话次数,其间以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码及其通话次数,并且附加给出并列狂人的人数。输入样例:41300原创 2021-08-25 10:04:30 · 284 阅读 · 0 评论 -
PTA10-排序6 Sort with Swap(0, i)
PTA10-排序6 Sort with Swap(0, i)文章目录PTA10-排序6 Sort with Swap(0, i)分析注意code原题链接Given any permutation of the numbers {0, 1, 2,…, N−1}, it is easy to sort them in increasing order. But what if Swap(0, *) is the ONLY operation that is allowed to use? For exam原创 2021-08-19 22:15:42 · 255 阅读 · 0 评论 -
PTA 10-排序5 PAT Judge
PTA 10-排序5 PAT Judge文章目录PTA 10-排序5 PAT Judge思路注意Code原题链接The ranklist of PAT is generated from the status list, which shows the scores of the submissions. This time you are supposed to generate the ranklist for PAT.Input Specification:Each input file c原创 2021-08-19 19:58:24 · 355 阅读 · 0 评论 -
PTA 10-排序4 统计工龄
PTA 10-排序4 统计工龄文章目录PTA 10-排序4 统计工龄思路code原题链接给定公司N名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。输入格式:输入首先给出正整数N(≤105),即员工总人数;随后给出N个整数,即每个员工的工龄,范围在[0, 50]。输出格式:按工龄的递增顺序输出每个工龄的员工个数,格式为:“工龄:人数”。每项占一行。如果人数为0则不输出该项。输入样例:810 2 0 5 7 2 5 2结尾无空行输出样例:0:12:35:27:110:原创 2021-08-19 15:56:11 · 601 阅读 · 0 评论 -
PTA 09-排序3 Insertion or Heap Sort
PTA 09-排序3 Insertion or Heap Sort题目原链接According to Wikipedia:Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insertion sort removes one element from the input data, finds the locati原创 2021-08-18 21:20:24 · 267 阅读 · 0 评论 -
PTA 09-排序2 Insert or Merge
PTA 09-排序2 Insert or Merge文章目录PTA 09-排序2 Insert or Merge题意思路注意Code原题链接According to Wikipedia:Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insertion sort removes one element from原创 2021-08-18 20:26:12 · 270 阅读 · 0 评论 -
PTA 09-排序1 排序
PTA 09-排序1 排序原题链接给定N个(长整型范围内的)整数,要求输出从小到大排序后的结果。本题旨在测试各种不同的排序算法在各种数据情况下的表现。各组测试数据特点如下:数据1:只有1个元素;数据2:11个不相同的整数,测试基本正确性;数据3:103个随机整数;数据4:104个随机整数;数据5:105个随机整数;数据6:105个顺序整数;数据7:105个逆序整数;数据8:105个基本有序的整数;数据9:105个随机正整数,每个数字不超过1000。输入格式:输入第一行给出正整数N原创 2021-08-18 14:07:47 · 309 阅读 · 0 评论 -
PTA 08-图9 关键活动
PTA 08-图9 关键活动原题链接假定一个工程项目由一组子任务构成,子任务之间有的可以并行执行,有的必须在完成了其它一些子任务后才能执行。“任务调度”包括一组子任务、以及每个子任务可以执行所依赖的子任务集。比如完成一个专业的所有课程学习和毕业设计可以看成一个本科生要完成的一项工程,各门课程可以看成是子任务。有些课程可以同时开设,比如英语和C程序设计,它们没有必须先修哪门的约束;有些课程则不可以同时开设,因为它们有先后的依赖关系,比如C程序设计和数据结构两门课,必须先学习前者。但是需要注意的是,对一原创 2021-08-17 16:09:02 · 340 阅读 · 0 评论 -
PTA 08-图8 How Long Does It Take
PTA 08-图8 How Long Does It Take原题链接Given the relations of all the activities of a project, you are supposed to find the earliest completion time of the project.Input Specification:Each input file contains one test case. Each case starts with a line con原创 2021-08-17 15:11:20 · 211 阅读 · 0 评论 -
PTA 08-图7 公路村村通
PTA 08-图7 公路村村通原题链接现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入数据包括城镇数目正整数N(≤1000)和候选道路数目M(≤3N);随后的M行对应M条道路,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号以及该道路改建的预算成本。为简单起见,城镇从1到N编号。输出格式:输出村村通需要的最低成本。如果输入数据不足以保证畅通,则输出−1,表示需要建设更多公路。输入样例:6 151原创 2021-08-13 21:10:28 · 318 阅读 · 0 评论 -
PTA 07-图6 旅游规划
PTA 07-图6 旅游规划原题链接有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0~(N−1);M是高速公路的条数;S是出发地的城市编号;D是目的地的城市编号。随后的M行中,每行给出一条高速公路的信息,分别是:原创 2021-08-13 11:50:17 · 272 阅读 · 0 评论 -
PTA 07-图5 Saving James Bond - Hard Version
PTA 07-图5 Saving James Bond - Hard Version原题链接This time let us consider the situation in the movie “Live and Let Die” in which James Bond, the world’s most famous spy, was captured by a group of drug dealers. He was sent to a small piece of land at the c原创 2021-08-12 23:27:31 · 184 阅读 · 0 评论 -
PTA 07-图4 哈利·波特的考试
PTA 07-图4 哈利·波特的考试原题链接哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外,如果想把猫变成鱼,可以通过念一个直接魔咒lalala,也可以将猫变老鼠、老鼠变鱼的魔咒连起来念:hahahehe。现在哈利·波特的手里有一本教材,里面列出了所有的变形魔咒和能变的动物。老师允许他自己带一只动物去考场,要考察他原创 2021-08-12 20:11:19 · 138 阅读 · 0 评论 -
PTA 06-图2 Saving James Bond - Easy Version
PTA 06-图2 Saving James Bond - Easy Version原题链接This time let us consider the situation in the movie “Live and Let Die” in which James Bond, the world’s most famous spy, was captured by a group of drug dealers. He was sent to a small piece of land at the c原创 2021-08-11 17:29:03 · 193 阅读 · 0 评论 -
PTA 06-图1 列出连通集
PTA 06-图1 列出连通集原题链接给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式:输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。输出格式:每行输出一个连通集。先输出DFS的结果,再输出BFS的结果。输入样例:8 60 70 12 04 12 4原创 2021-08-11 15:52:12 · 148 阅读 · 0 评论 -
PTA 05-树9 Huffman Codes
PTA 05-树9 Huffman Codes原题链接题目理解【来自陈越姥姥的讲解视频和PPT+自己的记录】(1)Huffman编码不唯一0和1可能互换树的形状可能不一样但是都是最优Huffman编码注意:最优编码不一定通过Huffman算法得到!因此题意不能仅仅理解为:编码是否符合Huffman树(2)HuffmanCodes的特点1.最优编码——总长度(WPL)最小2.无歧义解码——前缀码:数据仅存于叶子结点3.没有度为1的结点——满足1,2则必然有3(题目不必单独判断)满足原创 2021-08-10 21:14:22 · 624 阅读 · 2 评论 -
PTA 05-树8 File Transfer
PTA 05-树8 File Transfer题目链接We have a network of computers and a list of bi-directional connections. Each of these connections allows a file transfer from one computer to another. Is it possible to send a file from any computer on the network to any other原创 2021-08-09 16:30:45 · 152 阅读 · 0 评论 -
PTA 05-树7 堆中的路径
PTA 05-树7 堆中的路径题目链接将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。输出格式:对输入中给出的每个下标i,在一行中输出从H[i]到根结点的路径上的数据。数字间以1个空格分隔,行末不得有多余空格。输入样例:5 3原创 2021-08-09 14:40:17 · 124 阅读 · 0 评论 -
PTA 04-树7 二叉搜索树的操作集
PTA 04-树7 二叉搜索树的操作集题目链接思路原文链接:https://blog.youkuaiyun.com/weixin_43893847/article/details/102647325主要写一下Delete.1.按顺序找,找到了空结点,表示树中没有这个节点。2.比当前结点值小,找左子树。3.比当前结点值大,找右子树。4.等于当前结点值,要删除当前结点。(1)左右孩子健全,最便捷的删除方式是用左子树最大结点或右子树最小结点的值替换该结点值,然后载左子树或右子树中删除这个值;(二叉搜索树的属原创 2021-08-07 15:00:56 · 636 阅读 · 0 评论 -
PTA 04-树6 Complete Binary Search Tree
PTA 04-树6 Complete Binary Search Tree原题链接解题思路根据中序填数组Code#include<iostream>#include<algorithm>#define Maxsize 2001using namespace std;int N,index=0;int CBT[Maxsize],num[Maxsize];//CBT用于输出,num用来排序void inorder(int root){//中序遍历递归求完全二叉树原创 2021-08-07 11:02:05 · 112 阅读 · 0 评论 -
PTA 04-树5 Root of AVL Tree
PTA 04-树5 Root of AVL Tree原题链接一直段错误!求救SOS!求救Code我的代码:参考了bilibili up主(Slatter)视频#include<iostream>#include <stdio.h>#include <stdlib.h>#include<cmath>using namespace std;typedef struct TreeNode *Tree;struct TreeNode{原创 2021-08-07 10:22:15 · 225 阅读 · 0 评论 -
PTA 04-树4 是否同一棵二叉搜索树
PTA 04-树4 是否同一棵二叉搜索树题目链接给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,分别是每个序列插入元素的个数和需要检查的序列个数。第2行给出N个以空格分隔的正整数,作为初始插入序列原创 2021-08-06 16:35:43 · 163 阅读 · 0 评论 -
PTA 03-树3 Tree Traversals Again
03-树3 Tree Traversals Again原题链接An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 to 6) is traversed, the stack operations are: push(原创 2021-07-29 15:40:19 · 212 阅读 · 0 评论 -
PTA 03-树2 List Leaves
03-树2 List Leaves原题网址这是我第一次做PTA不用借鉴网络上的代码并且AC的题目!!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 posit原创 2021-07-28 14:36:34 · 248 阅读 · 0 评论 -
PTA 03-树1 树的同构
03-树1 树的同构原题链接给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1图2现给定两棵树,请你判断它们是否是同构的。输入格式:输入给出2棵二叉树树的信息。对于每棵树,首先在一行中给出一个非负整数N (≤10),即该树的结点数(此时假设结点从0到N−1编号);随后N行,第i行对应编号第i个结点,给出该结点中存储的1原创 2021-07-28 11:36:42 · 277 阅读 · 0 评论 -
PTA 02-线性结构3 Reversing Linked List
02-线性结构3 Reversing Linked List原题连接解题参考代码Given a constant K and a singly linked list L, you are supposed to reverse the links of every K elements on L. For example, given L being 1→2→3→4→5→6, if K=3, then you must output 3→2→1→6→5→4; if K=4, you must out原创 2021-07-27 15:53:18 · 266 阅读 · 0 评论 -
PTA 01-复杂度2 Maximum Subsequence Sum
PTA中国大学MOOC-陈越、何钦铭-数据结构-2021夏原题PTA题目:Sample Input:10-10 1 2 3 4 -5 -23 3 7 -21Sample Output:10 1 4Code:#include<iostream>#include<unordered_map>#include<vector>using namespace std;int main(){ int K; cin>>K;原创 2021-07-20 16:30:56 · 289 阅读 · 0 评论 -
PTA 02-线性结构4 Pop Sequence
02-线性结构4 Pop Sequence (25 分)题目链接Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, …, N and pop randomly. You are supposed to tell if a given sequence of numbers is a possible pop sequence of the stack. For example, i原创 2021-07-27 15:01:47 · 171 阅读 · 0 评论 -
PTA 02-线性结构2 一元多项式的乘法与加法运算
02-线性结构2 一元多项式的乘法与加法运算 (20 分)原题设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。输入样例:4 3 4 -5 2 6 1 -2 03 5 20 -7 4 3 1原创 2021-07-27 15:00:34 · 204 阅读 · 0 评论