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 · 205 阅读 · 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 · 265 阅读 · 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 · 215 阅读 · 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 · 170 阅读 · 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 · 223 阅读 · 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 · 143 阅读 · 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 · 132 阅读 · 0 评论 -
【topN+模拟最小堆的思路】⭐PAT A1129 Recommendation System
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点排序、STL实现码前思考我在一开始使用了最愚蠢的方法,那就是每次都使用sort进行一次新的排序,果然是运行超时了;后来看别人的题解,发现原来这个其实就是一个TopN问题,自己明明之前在堆里面做过很多关于TopN,而这次还是没有记起该怎么做,我好菜。所以,使用TopN的思想,每次维系前N个数就好了。代码实现/...原创 2020-05-03 22:00:53 · 237 阅读 · 0 评论 -
【手工哈希】PAT A1047 Student List for Course (25分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思题目描述知识点手工哈希我的实现码前思考由于前面做了一道Course List for Student,所以这里做的还算顺利。只是关于如何将数字重新变成字符数组呢?我们可以想象,如果每次都是使用函数,那么很麻烦,也很耗时。因此我们使用一个id2name的数组来保存id到name的映射,这样就能节省不少空间和时间了。我们的courseList里面只要存储id就好,到时候输出name时,直接映射就可了。代码实现//使用一个数组存放数字到.原创 2020-08-12 15:39:28 · 164 阅读 · 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 · 162 阅读 · 0 评论 -
PAT A1017 Queueing at Bank
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点STL之priority_queue实现码前思考时间最好用秒数s来记录需要记录到来时间,开始服务时间和结束服务时间;记得考虑一个用户运气好,来的时候不用等;记得按来的时间排序;代码实现//每个window一个人,单人占用部分超过60min//没有同时到达的客户,就是说大家是有先后次序的!队列//超过17:00之后来,不当做人看,之前都当作人看,直接忽略#include <cstdio>#inc.原创 2020-06-01 21:57:17 · 98 阅读 · 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 · 121 阅读 · 0 评论 -
⭐PAT A1108 Finding Average
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点字符串处理题实现码前思考我的思想 很暴力 ,就是每次读一个字符串,然后遍历这个字符串来判断是否合法。从非负号开始读起;记录小数点出现的次数,一旦出现两个小数点,返回false;记录小数点前面的值和小数点后面的值的大小;检查当前字符是不是数字和小数点,不是则返回false;小数点前后相加,如果超过范围,返回...原创 2020-04-28 19:09:20 · 137 阅读 · 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 · 117 阅读 · 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 · 125 阅读 · 0 评论