![](https://img-blog.csdnimg.cn/20200809201146683.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
PAT错题集
刷PAT时不会写的题
yc_cy1999
一只喜欢cc和想去南大的小羊
展开
-
【高精度加法】PAT A1024 Palindromic Number
文章目录知识点疑问代码反思 知识点 大整数运算 疑问 暂无 代码 #include "bits/stdc++.h" using namespace std; const int maxn = 100000; struct bign{ int d[maxn]; int len; bign(){ fill(d,d+maxn,0); len=0; } }; //最大的次数 ...原创 2020-03-13 20:44:40 · 158 阅读 · 0 评论 -
【特殊情况判定+理解题意】PAT A1096 Consecutive Factors
文章目录疑问代码反思 疑问 暂无 代码 #include "bits/stdc++.h" using namespace std; //输入的数字的大小 int n; //最长连续因子的开头 int first; //最长连续因子的连续值 int len; int main(){ scanf("%d",&n); //初始化,记得考虑到n为质数的情况 first...原创 2020-03-08 20:36:14 · 246 阅读 · 1 评论 -
【质因子分解+打印素数表】PAT A1059 Prime Factors
文章目录疑问代码反思 疑问 暂无 代码 //直接设定了N的大小是int型 #include "bits/stdc++.h" using namespace std; const int maxn = 1e6; //用于存放质数的数组 int prime[maxn],pNum=0; bool p[maxn] = {0}; struct factor{ int x; int cn...原创 2020-03-07 23:42:46 · 175 阅读 · 0 评论 -
PAT A1116 Come on! Let‘s C
文章目录题目描述知识点实现码前思考代码实现码后反思 题目描述 知识点 素数 实现 码前思考 就是很简单的素数的判断,思维量不大 代码实现 #include "bits/stdc++.h" using namespace std; //最大的排名 const int maxn = 1e4+10; //是否是质数 bool isPrime[maxn]; map<int,int&...原创 2020-04-30 18:15:59 · 118 阅读 · 0 评论 -
【二次方探查法+素数判断】PAT A1078 Hashing
文章目录疑问代码反思 疑问 暂无 代码 #include "bits/stdc++.h" using namespace std; const int maxn = 1e4+100; int msize; int n; bool h[maxn] = {0}; bool isPrime(int m){ //特判1 if(m <= 1){ return false; ...原创 2020-03-07 22:05:19 · 200 阅读 · 0 评论 -
【进制转换坑点+根号求素数】PAT A1015 Reversible Primes
目录疑问代码反思 疑问 暂无 代码 #include "bits/stdc++.h" using namespace std; //进制数组长度 const int maxn = 10; //原始数据 int n; //进制 int d; //进制数组 int arr[maxn]; //进制数组的有效长度-1,也就是指数大小 int len; bool isPrime(...原创 2020-03-07 20:51:50 · 140 阅读 · 0 评论 -
PAT A1149 Dangerous Goods Packaging【稀疏图考虑边】⭐⭐⭐⭐⭐
文章目录题目描述知识点实现码前实现代码实现码后反思 题目描述 知识点 图 实现 码前实现 这道题我写错了,我一开始是这样写的: 上面的分析确实有道理,如果一直两两点比较,那么就是组合数了,时间复杂度变成了103×103=10610^3 \times 10^3 = 10^6103×103=106。但是,如果只是遍历边的话,那么最多也只有2×1042 \times 10^42×104的时间复杂度! 因此,每次都是扫描该点的所有不匹配点是否出现在了之前的数字中。 代码实现 #include "bits.原创 2020-05-09 18:58:39 · 130 阅读 · 0 评论 -
【topN+模拟最小堆的思路】⭐PAT A1129 Recommendation System
文章目录题目描述知识点实现码前思考代码实现码后反思 题目描述 知识点 排序、STL 实现 码前思考 我在一开始使用了最愚蠢的方法,那就是每次都使用sort进行一次新的排序,果然是运行超时了; 后来看别人的题解,发现原来这个其实就是一个TopN问题,自己明明之前在堆里面做过很多关于TopN,而这次还是没有记起该怎么做,我好菜。所以,使用TopN的思想,每次维系前N个数就好了。 代码实现 /...原创 2020-05-03 22:00:53 · 177 阅读 · 0 评论 -
【手工哈希】PAT A1047 Student List for Course (25分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思 题目描述 知识点 手工哈希 我的实现 码前思考 由于前面做了一道Course List for Student,所以这里做的还算顺利。 只是关于如何将数字重新变成字符数组呢?我们可以想象,如果每次都是使用函数,那么很麻烦,也很耗时。因此我们使用一个id2name的数组来保存id到name的映射,这样就能节省不少空间和时间了。我们的courseList里面只要存储id就好,到时候输出name时,直接映射就可了。 代码实现 //使用一个数组存放数字到.原创 2020-08-12 15:39:28 · 109 阅读 · 0 评论 -
⭐⭐⭐⭐⭐【手动哈希】PAT A1039 Course List for Student (25分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思 题目描述 知识点 手动哈希 我的实现 码前思考 前几次提交使用的是map+string,结果都超时了。后来选择了手动hash,将string转换成int,然后使用vector数组,就过题了。 主要还是map的性能不太行,加上string的cin和cout开销太大了。 代码实现 //采用map+vetctor #include <iostream> #include <unordered_map> #include <.原创 2020-08-12 15:11:24 · 158 阅读 · 0 评论 -
PAT A1017 Queueing at Bank
文章目录题目描述知识点实现码前思考代码实现码后反思 题目描述 知识点 STL之priority_queue 实现 码前思考 时间最好用秒数s来记录 需要记录到来时间,开始服务时间和结束服务时间; 记得考虑一个用户运气好,来的时候不用等; 记得按来的时间排序; 代码实现 //每个window一个人,单人占用部分超过60min //没有同时到达的客户,就是说大家是有先后次序的!队列 //超过17:00之后来,不当做人看,之前都当作人看,直接忽略 #include <cstdio> #inc.原创 2020-06-01 21:57:17 · 92 阅读 · 0 评论 -
PAT A1009 Product of Polynomials (25分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思 题目描述 知识点 模拟题 我的实现 码前思考 就是模拟题了 代码实现 //使用后结构体来办事 #include <iostream> #include <vector> #include <algorithm> using namespace std; const int maxn = 2e3+10; struct node{ int exp; double coef; node(){} node(i.原创 2020-08-11 16:16:37 · 115 阅读 · 0 评论 -
⭐PAT A1108 Finding Average
文章目录题目描述知识点实现码前思考代码实现码后反思 题目描述 知识点 字符串处理题 实现 码前思考 我的思想 很暴力 ,就是每次读一个字符串,然后遍历这个字符串来判断是否合法。 从非负号开始读起; 记录小数点出现的次数,一旦出现两个小数点,返回false; 记录小数点前面的值和小数点后面的值的大小; 检查当前字符是不是数字和小数点,不是则返回false; 小数点前后相加,如果超过范围,返回...原创 2020-04-28 19:09:20 · 112 阅读 · 0 评论 -
⭐⭐⭐⭐⭐PAT A1082 Read Number in Chinese
文章目录题目描述知识点实现码前思考代码实现码后反思 题目描述 题目大意:给定一个不超过9位的整数,你应该用传统的中文方式阅读它~ 如果是负的,首先输出“Fu”。 例如,-123456789被读作“Fu yi Yi er Qian san Bai si Shi wu Wan liu Qian qi Bai ba Shi jiu”。 注意:零(“ling”)必须根据中国传统正确处理。 例如,100800是“yi Shi Wan ling ba Bai”~ 知识点 模拟题 实现 码前思考 需要分为3个部分进.原创 2020-05-25 22:08:10 · 105 阅读 · 0 评论 -
⭐⭐⭐⭐⭐PAT A1148 Werewolf - Simple Version
文章目录题目描述知识点实现码前思考代码码后反思 题目描述 1148 Werewolf - Simple Version (20分) 知识点 思维 实现 码前思考 这道题目我没有写出来,谁tm能够想到这是一道暴力题呢?! 好吧,这个数据最大是100,O(N3)O(N^3)O(N3)的话就是10610^6106,没有超出1s的限制,不知道会不会超出400ms的限制; 居然是暴力,下面是柳神的解答: 关键就是要先自己假设好谁是狼人,谁是人,然后他们说的话,看其中说谎的有多少个。。。 代码 //数组下标从.原创 2020-05-09 17:48:36 · 117 阅读 · 0 评论