PAT A1098 堆排序

2019-03-01
阅读 2 分钟
1.6k
完整的堆排序内容; 其中给出了一个思路,就是对于插入排序,使用sort函数会快很多。。。这也算模拟经典排序的一种取巧方式 {代码...}

PAT A1094

2019-02-21
阅读 1 分钟
1.6k
水题,没有什么好说的 {代码...}

PAT A1144

2019-02-21
阅读 1 分钟
1.5k
题目操蛋就操蛋在给出的int范围内的数可能会使得数组开不够,所以用map可能好一点 {代码...}

PAT A1142

2019-02-21
阅读 2 分钟
1.4k
题目大意:给出一个无向图,并且给出一个点集,要求内部每个点两两直接相连;并且后面要判定是不是最大的满足这个点集的集合; {代码...}

PAT A1119 前序遍历后续遍历不唯一生成

2019-02-21
阅读 2 分钟
2k
之前仅仅接触过如何通过二叉树的中序+先序/后序序列生成唯一二叉树,这一次见到了这个新的题型; 这里先梳理一个概念,之所以会生成树不唯一,一定是有一个叶子,无论其在父节点的左右子节点,都可能生成相同的先序和后序遍历序列; 所以这个时候,思路就很清晰,我们判别一个序列是否唯一,条件就是是否有一个节点只有...

PAT A1125

2019-02-21
阅读 1 分钟
1.6k
题目没读懂,刚开始都不知道他在说些什么。。。 简而言之就是给出一堆绳子,练成一条; 没两两段绳子练成环,串在一起,之后仍旧视为一串绳子,下次跟别的单独绳子连接的时候仍需对折; 所以可以看出,越长的绳子在前面越对折越吃亏,所以应该进行排序,长的绳子放在后面进行连接; {代码...}

PAT A1122

2019-02-21
阅读 1 分钟
1.5k
本身在图论不是一道难题; 需要注意这个环判断的几个隐藏点:1.首位相同;2.每个节点只能访问一次; 这里借鉴一位大神的操作,其实两种情况可以分两种判别方式,分开判别;这里再次说一下set查重贼好用,这里可以看是否出现重复节点; {代码...}

PAT A1121

2019-02-21
阅读 2 分钟
1.2k
水题,但是通过这一题需要改进一点; 对于hash赋初值的时候一定要谨慎一点,不要随便赋值0,视输入的数据而定; {代码...}

PAT A1063

2019-02-20
阅读 1 分钟
1.2k
这里面还是用到了set去重,还是要多掌握stl的用法;这里注意一个巧妙地处理;由于我们寻找的时两个集合a,b的不重复元素,和重复元素;首先记录b的集合元素,在b中挨个寻找a的元素;如果在b中没有找到,则说明是不重复元素,找到了说明时重复元素,所以分开记录

PAT A1060 科学记数法经典例题(全string库解决)

2019-02-20
阅读 2 分钟
2k
挺操蛋的一道题,我他妈的都服了。。。出这道题我怕是毙了 首先题目里就有几个坑:1.可能有前导零,比如说000.00012.可能有零,比如说000.0000000 哎,思路感觉最重要,对于字符串处理一定要有思路,知道先干嘛,后干嘛; 首先就要去除前导零,把他变成一个纯净的浮点数; 去除前导零,我们就可以进行分类讨论,因为必定...

PAT A1120

2019-02-20
阅读 1 分钟
1.1k
水题,没什么可说的 {代码...}

PAT A1116

2019-02-20
阅读 1 分钟
1.2k
hash数组能少开就少开,而且还可以利用set进行去重管理 {代码...}

PAT A1108

2019-02-20
阅读 2 分钟
1.6k
字符串处理,个人觉得最好的办法还是建立一个处理函数统一进行处理; {代码...}

PAT A1104

2019-02-20
阅读 1 分钟
1.6k
如果采用单纯的暴力枚举,会出现超时问题,可以跟绝递推来找出来规律; 代码如下: {代码...}

PAT A1052

2019-02-20
阅读 1 分钟
1.8k
这个需要注意的是相关的string转整数或者double的函数;详见这个链接blog {代码...}

PAT A1154

2019-02-20
阅读 2 分钟
1.4k
就是个边判别的题我还用dfs和bfs。。。之后又忽律颜色给定的范围,范围根本不得而知,结果在一个case上卡了很久,直接用set去重就完美解决。。。

PAT A1059 质因子分解

2019-02-19
阅读 2 分钟
1.4k
这里需要注意一下,long int就是int,一样的。。。 {代码...}

PAT A1096 质因子分解

2019-02-19
阅读 1 分钟
1.6k
其实思路很简单,从2~sqrt(n)进行枚举,使得n%temp是否能够取余为0,temp为连续质因子的乘积。在每次迭代中记录最长的质因子序列和相应的起始值;

PAT A1078

2019-02-18
阅读 2 分钟
1.2k
这道题牵扯到了hash散列中的集中查询方式,随后做一个总结,对于素数方面,没有神马难度; {代码...}

PAT A1015

2019-02-18
阅读 2 分钟
1.4k
可以说是常规下的素数判断; 唯一要注意的是循环读入这个点: 该句子其实就是读取到结尾结束,在文件中标识的就是缓冲区读取完毕。这里可以用来判断神马时候输入完毕; 这里还是在判别函数里要注意两点:第一:注意,0,1不是素数;第二:判别区间应该是2~sqrt(n),闭区间 {代码...}

PAT A1088 分数四则运算

2019-02-18
阅读 2 分钟
1.3k
和之前那题一样,只不过是四册运算: {代码...}

PAT A1081 分数计算

2019-02-18
阅读 2 分钟
1.4k
分数计算,之前做过相关的总结,这里不再赘述代码如下: {代码...}

PAT A1057 分块思想

2019-02-17
阅读 2 分钟
1.6k
使用的就是分块思想,之前写过总结,所以不再赘述;代码如下: {代码...}

PAT A1055

2019-02-17
阅读 2 分钟
2.1k
水题,还是字典排序,没神马好说的; {代码...}

PAT A1023 sort cmp字典序比较

2019-02-17
阅读 2 分钟
1.6k
一定要注意sort和cmp的返回值;其实可以这么理解;对于cmp,我们的目的是让数据按照给出的形式进行排序,例如我们想让序列递增,则排序的方式就为:a<b;这样序列中处处都是a<b;同理,如果构建了struct,其中包括一个string,我们希望整个序列按照字典序递增,该怎么办?这个时候就要用到strcmp函数来做辅助;

PAT A1023

2019-02-17
阅读 2 分钟
1.6k
简单的大数问题,long long并不能容纳21位数字,这是刚开始没有注意到的 {代码...}

PAT A1017 优先队列

2019-02-17
阅读 2 分钟
2.1k
这道题有点像优先队列的思想,简而言之就是挑选最小的入队处理,如果有多个队列就进行多个队列的处理; 借鉴的思想是采用记录每个队列中的任务完成时间,然后在读入任务的时候进行轮询,选择结束时间最小的那个队列,然后进行处理和等待时间的计算; 代码如下: {代码...}

PAT A1010 二分进制结合重点题

2019-02-16
阅读 3 分钟
1.8k
这道题而可以说是比较难的一道题,如果采用常规遍历,会出现时长或者溢出的问题;示例中给出的思路很值得借鉴;个人通过该示例有以下几个不同理解:1.有时候两个不同进制的数对比,我们可以进行进制,转化十进制来进行比较;2.对于有些枚举或者寻找问题,为了不进行枚举遍历,我们应该第一时间想到二分查找;

PAT A1048 二分/two points

2019-02-16
阅读 2 分钟
1.4k
方法一:二分查找;由于是两个数和,所以我们从i=1开始枚举,在剩下的i+1~n序列中找到m-a[i]的数,是一个递增不重复序列的查找问题,之前二分法总结过,所以不再赘述;代码如下:

PAT A1044 二分法

2019-02-16
阅读 2 分钟
1.8k
这道题可以利用二分来做,其实个人觉得动态规划也可以;利用二分的前提条件就是该序列是一个不下降序列;所以我们可以先构建一个sum数组,存放1-i的和值;当然题目中要计算i-j子序列的值,其实这个可以利用sum数组来计算,该子序列的和就是sum[j]-sum[i];所以我们就相当于对sum和二分序列寻找sum[i]+x,其中,x为题目前...