自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 PAT【41/155】

PAT【41/155】树1020 Tree Traversals巧妙:用map存左孩子、右孩子、在中序遍历的下标位置层序遍历=bfs,用数组即可完成#include<iostream>#include<unordered_map>#include<algorithm>using namespace std;#define MaxN 40int postorder[MaxN],inorder[MaxN];unordered_map<int,int

2021-09-15 20:47:45 119

原创 PAT【39/155】

PAT【39/155】每日1-5题 到9/20打卡树1004 Counting Leaves#include<iostream>#include<cstring>#include<algorithm>#define MaxSize 100100using namespace std;int h[MaxSize],E[MaxSize],ne[MaxSize],idx=0;int cnt[MaxSize],maxdepth;void add(int id,

2021-09-15 14:38:21 107

原创 PAT 2021 9/11

PAT 2021 9/11第一题感觉挺简单的 但是一直是11分,求解释#include<iostream>#define MaxN 100010using namespace std;struct Node{ long long int add; int size;}E[MaxN];int S[MaxN];bool st[MaxN];int N,M;int main(){ long long int num; scanf("%d%d",&amp

2021-09-11 16:36:02 122

原创 【倒计时4day 35/155】

【倒计时4day ?/155】基础算法与数据结构1057 Stack栈对顶堆问题,不断插入数,不断的输出中位数——数据流的中位数堆stl中不可以删除——用集合代替 multiset新数据结构:对顶堆multiset中,允许元素重复1.调整堆如果up的堆数量小于down的堆数量,那么需要调整(将down中的最大元素插入到up中,并在down中删除这个元素)如果down的堆数量小于up的堆数量+1,那么需要调整(将up中的最小元素插入到down中,并在up中删除这个元素)2.堆性质up(小

2021-09-07 21:20:48 103

原创 【倒计时5day 31/155】

【倒计时5day ?/155】

2021-09-07 10:52:10 108

原创 【倒计时6 day 28/155】

【倒计时6 day 28/155】第十二章 贪心法1038 Recover the Smallest Number 排成最小的数字#include<iostream>#include<vector>#include<algorithm>using namespace std;bool cmp(string a,string b){ string str1,str2; str1=a+b; str2=b+a; if(str1&l

2021-09-05 23:57:04 71

原创 【倒计时7,8 day 25/155】

【倒计时8 day ?/155】文章目录第二章高精度1024 Palindromic Number回文数1058 A+B in Hogwarts 霍格沃兹的A+B第二章高精度1024 Palindromic Number回文数#include<iostream>#include<string.h>#include<algorithm>using namespace std;bool is_Pnumber(string a){ string b;

2021-09-05 19:27:47 90

原创 【倒计时9day 22/155】

【倒计时10day ?/155】

2021-09-03 17:01:33 113

原创 【倒计时10day 15/155】

【倒计时10day ?/155】第一章字符串处理1016 Phone Bills 电话账单重要思路前缀和——计算时间时,以第一时刻的时间为借鉴点,每次都用时刻-开始时刻。他们之间的时间即为两个时间之差。e.g.t0=1月1日0时0分t1=1月1日10时10分t2=1月1日12时12分t2-t1=(t2-t0)-(t1-t0)程序化,减少了时间复杂度...

2021-09-01 21:43:57 100

原创 【9/155倒计时11day】PAT(甲级)2018年秋季考试

PAT(甲级)2018年秋季考试嘤嘤 可以说是更差了,加油吧555第一题就看不懂不理解,心态有点不好,最后半小时放弃了7-1 Werewolf - Simple Version基础算法+数据结构——AcWing 1641. 狼人杀-简单版7-2 Dangerous Goods Packaging哈希表——AcWing 1642. 危险品装箱7-3 Travelling Salesman Problem图论——AcWing 1643. 旅行商问题7-4 LCA in a Binary Tr

2021-09-01 15:14:54 95

原创 【倒计时12day 6/155】PAT(甲级)2018年冬季考试

PAT(甲级)2018年冬季考试7-1 Google Recruitment#include<iostream>#include<stdlib.h>#include<cmath>#include<string.h>using namespace std;bool isPrime(int num){ for(int i=2;i<=sqrt(num);i++){ if(num%i==0){ re

2021-08-30 21:49:55 160

原创 PAT1002 A+B for Polynomials

PAT1002 A+B for Polynomials给定两个多项式 A 和 B,计算 A+B 的结果。输入格式共两行,每行包含一个多项式的信息,格式如下:K N1 aN1 N2 aN2 … NK aNK其中,K 表示多项式中非零项的数量,Ni 和 aNi 分别表示其中一个非零项的指数和系数。输出格式按照与输入相同的格式,输出 A+B 的结果。结果中的各项的系数均保留一位小数。数据范围K 为整数,1≤K≤10。Ni 为整数,0≤NK<⋯<N2<N1≤1000。aNi

2021-08-27 19:30:20 71

原创 ACWING 1547. 约会

ACWING 1547. 约会文章目录ACWING 1547. 约会注意Code大侦探福尔摩斯接到一张奇怪的字条:我们约会吧!3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母 D,代表星期四;第 2 对相同的字符是 E ,那是第 5 个英文字母,代表一天里的第 14 个钟头(

2021-08-27 17:55:07 89

原创 PTA KMP 串的模式匹配

PTA KMP 串的模式匹配给定两个由英文字母组成的字符串 String 和 Pattern,要求找到 Pattern 在 String 中第一次出现的位置,并将此位置后的 String 的子串输出。如果找不到,则输出“Not Found”。本题旨在测试各种不同的匹配算法在各种数据情况下的表现。各组测试数据特点如下:输出格式:对每个 Pattern,按照题面要求输出匹配结果。输入样例:abcabcabcabcacabxy3abcabcacabcabcabcdabcabcabcabcac

2021-08-26 15:00:50 1138

原创 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 120

原创 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 288

原创 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 139

原创 PTA 11-散列1 电话聊天狂人

PTA 11-散列1 电话聊天狂人文章目录PTA 11-散列1 电话聊天狂人思路Code给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数N(≤10^5 ),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。输出格式:在一行中给出聊天狂人的手机号码及其通话次数,其间以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码及其通话次数,并且附加给出并列狂人的人数。输入样例:41300

2021-08-25 10:04:30 227

原创 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 177

原创 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 201

原创 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 514

原创 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 191

原创 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 173

原创 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 242

原创 PTA 08-图9 关键活动

PTA 08-图9 关键活动原题链接假定一个工程项目由一组子任务构成,子任务之间有的可以并行执行,有的必须在完成了其它一些子任务后才能执行。“任务调度”包括一组子任务、以及每个子任务可以执行所依赖的子任务集。比如完成一个专业的所有课程学习和毕业设计可以看成一个本科生要完成的一项工程,各门课程可以看成是子任务。有些课程可以同时开设,比如英语和C程序设计,它们没有必须先修哪门的约束;有些课程则不可以同时开设,因为它们有先后的依赖关系,比如C程序设计和数据结构两门课,必须先学习前者。但是需要注意的是,对一

2021-08-17 16:09:02 269

原创 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 133

原创 PTA 08-图7 公路村村通

PTA 08-图7 公路村村通原题链接现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入数据包括城镇数目正整数N(≤1000)和候选道路数目M(≤3N);随后的M行对应M条道路,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号以及该道路改建的预算成本。为简单起见,城镇从1到N编号。输出格式:输出村村通需要的最低成本。如果输入数据不足以保证畅通,则输出−1,表示需要建设更多公路。输入样例:6 151

2021-08-13 21:10:28 254

原创 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 199

原创 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 139

原创 PTA 07-图4 哈利·波特的考试

PTA 07-图4 哈利·波特的考试原题链接哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外,如果想把猫变成鱼,可以通过念一个直接魔咒lalala,也可以将猫变老鼠、老鼠变鱼的魔咒连起来念:hahahehe。现在哈利·波特的手里有一本教材,里面列出了所有的变形魔咒和能变的动物。老师允许他自己带一只动物去考场,要考察他

2021-08-12 20:11:19 86

原创 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 138

原创 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 106

原创 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 506 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 112

原创 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 91

原创 PTA 04-树7 二叉搜索树的操作集

PTA 04-树7 二叉搜索树的操作集题目链接思路原文链接:https://blog.csdn.net/weixin_43893847/article/details/102647325主要写一下Delete.1.按顺序找,找到了空结点,表示树中没有这个节点。2.比当前结点值小,找左子树。3.比当前结点值大,找右子树。4.等于当前结点值,要删除当前结点。(1)左右孩子健全,最便捷的删除方式是用左子树最大结点或右子树最小结点的值替换该结点值,然后载左子树或右子树中删除这个值;(二叉搜索树的属

2021-08-07 15:00:56 536

原创 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 77

原创 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 160

原创 PTA 04-树4 是否同一棵二叉搜索树

PTA 04-树4 是否同一棵二叉搜索树题目链接给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,分别是每个序列插入元素的个数和需要检查的序列个数。第2行给出N个以空格分隔的正整数,作为初始插入序列

2021-08-06 16:35:43 117

原创 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 171

空空如也

空空如也

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

TA关注的人

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