![](https://img-blog.csdnimg.cn/20200427001159989.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
入门模拟
PAT 入门模拟
yc_cy1999
一只喜欢cc和想去南大的小羊
展开
-
【map】PAT A1054 The Dominant Color (20分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思题目描述知识点STL我的实现码前思考题目中说了一定存在,那么每次判断就好了,水题!代码实现#include <iostream>#include <map>using namespace std;int main() { int m, n; scanf("%d %d", &m, &n); map<int, int> arr; int half .原创 2020-08-12 20:43:42 · 100 阅读 · 0 评论 -
PAT A1026 Table Tennis (30分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思题目描述1026 Table Tennis (30分)又臭又长知识点大模拟!我的实现码前思考直接跳过这道题,柳神说了:pat现在不考这种题了!代码实现#include <iostream>#include <vector>#include <algorithm>#include <cmath>using namespace std;struct person { i.原创 2020-08-11 17:29:25 · 486 阅读 · 0 评论 -
PAT A1017 Queueing at Bank
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点STL之priority_queue实现码前思考时间最好用秒数s来记录需要记录到来时间,开始服务时间和结束服务时间;记得考虑一个用户运气好,来的时候不用等;记得按来的时间排序;代码实现//每个window一个人,单人占用部分超过60min//没有同时到达的客户,就是说大家是有先后次序的!队列//超过17:00之后来,不当做人看,之前都当作人看,直接忽略#include <cstdio>#inc.原创 2020-06-01 21:57:17 · 91 阅读 · 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 · 111 阅读 · 0 评论 -
⭐PAT A1108 Finding Average
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点字符串处理题实现码前思考我的思想 很暴力 ,就是每次读一个字符串,然后遍历这个字符串来判断是否合法。从非负号开始读起;记录小数点出现的次数,一旦出现两个小数点,返回false;记录小数点前面的值和小数点后面的值的大小;检查当前字符是不是数字和小数点,不是则返回false;小数点前后相加,如果超过范围,返回...原创 2020-04-28 19:09:20 · 109 阅读 · 0 评论 -
【字符串函数】PAT A1077 Kuchiguse (20分)
文章目录题目描述知识点我的实现码前思考代码实现码后反思题目描述找所有字符串的共同后缀知识点STL字符串string的使用我的实现码前思考就一直比对就好代码实现#include <iostream>#include <string>using namespace std;const int maxn = 1e2+10;string ins[maxn];int n;int main(){ scanf("%d\n",&n); int len.原创 2020-08-10 16:19:49 · 98 阅读 · 0 评论 -
PAT A1139 First Contact (30分)【哈希存储边】⭐⭐⭐⭐⭐
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述1139 First Contact (30分)知识点图实现码前思考首先看到可能有10000个结点,肯定不能使用邻接矩阵,会爆炸的,得使用邻接表;我一开始想的是使用DFS去判断的,结果最后一个测试用例运行超时了;我第二个测试用例也没有过,因为居然存在-0000这种奇葩情况!!!后来看了柳神的代码,简直不要太清晰!...原创 2020-05-05 21:09:01 · 323 阅读 · 0 评论 -
LeetCode 155. Min Stack【栈+设计/辅助栈+空间换时间】⭐⭐⭐
文章目录题目描述知识点结果实现码前思考代码实现码后反思题目描述知识点栈、设计结果实现码前思考使用vector来实现栈;使用priority_queue来实时的保存最小值;代码实现class MinStack {public: vector<int> st; priority_queue<int,vector<int>,greater<int>> q; //使用优先队列存储最小值 int minVal; .原创 2020-07-25 20:55:58 · 70 阅读 · 0 评论 -
如何实现LRU缓存机制——哈希链表
文章目录一、什么是 LRU 算法二、LRU 算法描述三、LRU 算法设计四、代码实现一、什么是 LRU 算法LRU 就是一种缓存淘汰策略。计算机的缓存容量有限,如果缓存满了就要删除一些内容,给新内容腾位置。但问题是,删除哪些内容呢?我们肯定希望删掉那些没什么用的缓存,而把有用的数据继续留在缓存里,方便之后继续使用。那么,什么样的数据,我们判定为「有用的」的数据呢?LRU 缓存淘汰算法就是一种常用策略。LRU 的全称是 Least Recently Used,也就是说我们认为最近使用过的数据应该是.转载 2020-07-24 20:01:12 · 611 阅读 · 0 评论 -
LeetCode 146. LRU Cache【哈希+队列/哈希+双向链表】⭐⭐⭐⭐⭐
文章目录题目描述知识点结果实现码前思考代码实现码后反思题目描述知识点设计题(就是模拟题啦)结果实现码前思考这里我使用的是一个队列q来记录操作(即push和get)过的key,然后使用一个map存储key-value对,一个map存储在队列q中的存在某个key的次数,即key-count对;接下来的操作就很简单了,如果加入新元素,就从队列队头取count为0的那个key换出。代码实现class LRUCache {public: queue<int> q;.原创 2020-07-24 19:38:24 · 159 阅读 · 0 评论 -
⭐PAT A1061 Dating
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述福尔摩斯接到一张奇怪的字条:“我们约会吧!3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,前面两字符串中第1对相同的大写英文字母(大小写有区分)是第4个字母D,代表星期四;第2对相同的字符是E,那是第5个英文字母,代表一天里的第14个钟头(于是一天的0点到23点由数字0到9、以及大写字母A到N表示);后面两字符串第1对相同的英文字母s出现在第4个.原创 2020-06-02 18:46:26 · 165 阅读 · 0 评论 -
⭐⭐⭐⭐⭐PAT A1060 Are They Equal【变态测试数据】
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点STL string的用法实现码前思考对于这种格式转换的题目,最常用的方法就是写很多个 if-else 语句,也就是 分情况,将问题模块化,从宏观的角度上看,这样才不会在一开始分析的时候就陷入代码细节;对于这道题,首先可以将数字分为等于0,大于0小于1,大于等于1三种情况,针对这三种情况分别进行判断即可;对于每种情况,我们都要获取两个东西:前n个有效位;指数。理清上面的思路就很好解题了,主要是代码比较繁琐;.原创 2020-06-02 18:04:21 · 167 阅读 · 0 评论 -
⭐【思维+划分情况】PAT A1073 Scientific Notation
文章目录题目描述实现码前思考代码实现码后反思题目描述题目给出科学计数法的格式的数字A,要求输出普通数字表示法的A,并保证所有有效位都被保留,包括末尾的0。实现码前思考这道题目我用了很长的时间,这里主要还是分情况解析问题为主,将情形拆分为exp是大于0,小于0,还是等于0;代码实现#include <cstdio>#include <iostream>#include <string>using namespace std;string in.原创 2020-05-30 19:30:06 · 103 阅读 · 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 · 100 阅读 · 0 评论 -
PAT A1100 Mars Numbers
文章目录题目描述实现码前思考代码实现码后反思题目描述实现码前思考由于输入存在空格,所以需要一次性输入字符串,使用getline(cin,string);代码实现//注意getline的使用 #include <cstdio>#include <iostream>#include <map>#include <string>using namespace std;map<int,string> mpLow;map.原创 2020-05-18 23:11:47 · 107 阅读 · 0 评论 -
PAT A1105 Spiral Matrix
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点模拟题实现码前思考我最讨厌这种复杂的模拟题了。。。我写的代码很糟糕,还是看柳神的代码比较好代码实现//使用vector来表述矩阵#include <cstdio>#include <vector>#include <algorithm>#include <cmath>using namespace std;const int maxn = 1e4+10;.原创 2020-05-11 17:19:18 · 100 阅读 · 0 评论 -
PAT A1104 Sum of Number Segments
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点模拟题实现码前思考就是找规律的题呀代码实现#include "bits/stdc++.h" using namespace std;double res;int n;int main(){ res = 0.0; scanf("%d",&n); for(int i=1;i<=n;i++){ double cur; long long before = i-1; long long .原创 2020-05-11 17:05:34 · 63 阅读 · 0 评论 -
PAT A1140 Look-and-say Sequence
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点模拟题实现码前思考需要自己动手模拟一下怎么进行操作的,模拟一遍就有思路了!!!代码实现#include "bits/stdc++.h"using namespace std;//为了以防万一,采用数字数组vector进行计数vector<int> curN;vector<int&g...原创 2020-05-07 17:45:12 · 81 阅读 · 0 评论 -
⭐【高精度加法】PAT A1136 A Delayed Palindrome
文章目录题目描述知识点实现码前思考代码实现码后反思题目描述知识点STL使用实现码前思考这道题目给我的第一感觉就是使用高精度整数运算,但是我想错了!后面看看柳神的代码代码实现//高精度整数运算#include "bits/stdc++.h"using namespace std;const int maxn = 1e3+10;struct bign{ int ...原创 2020-05-05 20:35:41 · 144 阅读 · 0 评论 -
PAT A1002 A+B for Polynomials
实现码前思考题中的注意点包括以下:aN1a_{N1}aN1是非0的;两项相加可能使得某一项为0,根据1,这一项需要被剔除;注意末尾不能有空格,而且最后输出的KKK有可能为0;最后要保留一维小数点,即1要变成1.0;double类型的输入为%lf,输出却是%f,保留小数点为%.mf;代码实现//模拟题!//多项式加法//指数和系数的范围//系数要保留1为小数点 //注...原创 2020-04-27 18:38:53 · 60 阅读 · 0 评论 -
PAT A1065 A+B and C (64bit)
实现码前思考第一想法就是使用高精度整数运算;需要注意0是正号还是负号;代码实现//大整数的加法和减法!//注意0的符号,这里0的符号是-#include "bits/stdc++.h"using namespace std;const int maxn = 100;int t;char A[maxn];char B[maxn];char C[maxn];str...原创 2020-04-27 17:25:29 · 120 阅读 · 0 评论 -
【前缀和计算】PAT A1046 Shortest Distance
实现码前思考首先注意到运行时间的限制为200ms,对于一般的OJ系统,1s(即1000ms)中能计算10710^7107~10810^8108次。所以我们不能使用暴力的求解,因为暴力解法的时间复杂度为MNMNMN,大约有10910^9109方了,所以得想其他方法。既然暴力不行,那么只能另辟蹊径,转换思维,首先MMM是不可能变的,那么只有把NNN变成1,做法就是选取参考系,计算相对距离。...原创 2020-04-27 15:44:02 · 110 阅读 · 0 评论 -
【字符数组编码成数字】PAT A1042 Shuffling Machine
题目描述知识点模拟题结果实现码前思考首先,我们一定不要直接就存储字符串编号,如‘J1’,我们应该存储其数字编号,在最后输出的时候才转换为字符串代码实现//字符数组的使用掌握不好! #include "bits/stdc++.h"using namespace std;int main(){ //设置三个数组,数组下标全部从1开始 //洗牌顺序数组 ...原创 2020-04-27 14:53:15 · 122 阅读 · 0 评论