![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PAT(甲级)
xsimah
再见少年拉满弓,不惧岁月不惧风。
1.近4篇专利、科技先进工作者、E类人才,通过高项等;
2.参与管理6+人数据分析(AI)团队;
3.多次荣获数据分析模型比赛单位一等奖、作品一等奖/三等奖、个人一等奖等;
展开
-
1023 Have Fun with Numbers (附详细注释,逻辑分析)
写在前面正确立即题目permutation: 排列(方式);组合(方式)通用方法循环遍历计算结果,拼成字符串map封装大数字符次数结果,循环比较倍数结果与原数字符个数及种类不手生的情况下,10分钟内a题测试用例input:1234567899output:Yes2469135798ac代码时间长手生,撸代码时间耗费偏多#include<ma...原创 2019-08-04 21:07:47 · 334 阅读 · 0 评论 -
1020 Tree Traversals(附详细注释,逻辑分析)
写在前面创建二叉树递归实现,需要正确处理下标(暂未彻底理解)层次遍历二叉树格式控制(空格),无太大问题测试用例72 3 1 5 7 6 41 2 3 4 5 6 74 1 6 3 5 7 2ac代码传统实现(暂未彻底理解!)参考算法笔记代码#include<string>#include<queue>#include...原创 2019-07-31 23:59:05 · 870 阅读 · 0 评论 -
1103 Integer Factorization(附详细注释,逻辑分析)
写在前面深度优先搜索(DFS, Depth First Search)是一个递归过程,有回退过程;是一个针对图和树的遍历算法,早在19世纪就被用于解决迷宫问题。测试点输出结果字典序最大,且非递增序列输出超时问题话痨区个人知识盲区,ac时间无把握代码参考算法笔记,总感觉有点儿虚,后续只能多思考多训练弥补独立a题能力测试用例input: 169 5 2output...原创 2019-08-04 23:41:53 · 843 阅读 · 0 评论 -
1039 Course List for Student(附详细注释,逻辑分析)
写在前面Map封装数据,大数据量存在超时,待尝试实现方法字符串hash映射vector整型数据封装数据,排序方便熟练情况,10分钟内a题。潜在风险点运行超时导致测试点不通过额外知识字符串hash散列测试用例要码很多字,,,11 54 7BOB5 DON2 FRA8 JAY9 KAT3 LOR6 ZOE11 4ANN0 BOB5 JAY9 L...原创 2019-08-06 21:38:49 · 423 阅读 · 0 评论 -
1047 Student List for Course(附详细注释,逻辑分析)
写在前面实现方法通过int hash26_string_digit(char s[])函数将字符串( name )转换为10进制通过string num2string(int num)函数将10进制转换为字符串通过vector<int> course_v[k+1];封装选取某课程的学生集合代码熟练情况下,最长30分钟内a题个人a题耗费1小时10分钟字符串函数返回...原创 2019-08-06 23:34:15 · 255 阅读 · 0 评论 -
1014 Waiting in Line (30 分,附详细注释,逻辑分析)
写在前面实现思路结构体封装窗口数据时间归一化(统一为分钟,技巧性处理)S1. 计算、封装总窗口容量。下标取余窗口个数,并初始化窗口的计数时间、出队时间(结构体、完成时间数组)S2. 循环封装剩余队列元素。循环判断哪个窗口先存在出队元素,窗口插入元素需更新出队时间、结束时间(结构体、完成时间数组)S3. 循环打印判断开始时间是否超过17:00,打印输出相应值...原创 2019-08-18 19:17:57 · 4589 阅读 · 9 评论 -
1018 Public Bike Management (30 分,附详细注释,逻辑分析)
写在前面实现思路Dijkstra计算最短路径参数传递不满足最优子结构具体待研究DFS递归迭代计算最优解变量、函数相对较繁琐,涉及知识点较多研究ing不会告诉你,一般博主不太懂的问题,都不怎么总结测试用例input:10 3 3 56 7 00 1 10 2 10 3 31 3 12 3 1output:3 0->2->3 0ac代码...原创 2019-08-20 01:07:52 · 2101 阅读 · 0 评论 -
1022 Digital Library (30 分,附详细注释,逻辑分析)
写在前面实现思路map<string, set<int>> book元数据作为键值, 书号作为值封装输入数据其中,set<int> 避免排序问题key words 关键词可能存在多个,空格分隔循环读入查询类型、查询字符串,调用查询函数打印输出函数参数使用引用,否则可能存在超时问题(未验证,最后一组数据)输入读取、处理较为耗时t...原创 2019-08-20 16:04:24 · 682 阅读 · 0 评论 -
1082 Read Number in Chinese (25 分| 字符串处理,附详细注释,逻辑分析)
写在前面实现思路字符串存储、处理分节(个位节,万位节,亿位节)循环处理,4位1节根据上图自我领会,不太擅长处理该问题,,,如有必要自行实现,或调试ac代码理解其逻辑细节处理较为复杂,手写推理规律(不太熟悉中文读法),耗费时间较长测试用例input:-123456789output:Fu yi Yi er Qian san Bai si Shi wu Wan ...原创 2019-08-25 00:33:27 · 283 阅读 · 0 评论 -
1107 Social Clusters (30 分| 并查集,附详细注释,逻辑分析)
写在前面基础知识并查集(Union合并、Find查找、Set集合)合并操作查找操作:判断2个元素是否在1个集合具体原理掌握并查集知识点,该题目无难度熟练情况下35分钟a题目测试用例input:83: 2 7 101: 42: 5 31: 41: 31: 44: 6 8 1 51: 4output:34 3 1ac代码3个集合...原创 2019-08-25 02:38:08 · 360 阅读 · 1 评论 -
1054 The Dominant Color (20 分| map常见用法,附详细注释,逻辑分析)
写在前面实现思路map<int,int>封装数据,颜色值作为下标键,次数作为值inx,maxs循环迭代更新 最大值及最大下标1层循环解决问题题目相对简单,10分钟内a题目测试用例input:5 30 0 255 16777215 2424 24 0 0 2424 0 24 24 24output:24ac代码#include <iostr...原创 2019-08-25 06:35:35 · 192 阅读 · 0 评论 -
1071 Speech Patterns (25 分| 字符串处理,附详细注释,逻辑分析)
写在前面实现思路字符串存储、处理输入行字母、字符处理函数,包含大小写转换map<string, int>封装单词出现次数问题点实现方案属于核心问题行字符串操作外层大循环内层循环迭代查找最长合法字符子串,遇到非法则停止进入下一单词查找单词判空串也有必有英文单词synonyms : 同义字,同义词alphanumerical : 字母数字的...原创 2019-08-25 07:23:36 · 288 阅读 · 0 评论 -
1038 Recover the Smallest Number (30 分,附详细注释,逻辑分析)
写在前面实现思路原创 2019-08-20 22:49:39 · 606 阅读 · 3 评论 -
1034 Head of a Gang (30 分,附详细注释,逻辑分析)
写在前面实现思路原创 2019-08-21 10:31:03 · 499 阅读 · 0 评论 -
1049 Counting Ones (30 分| 简单数学| 附详细注释,逻辑分析)
写在前面实现思路数学推理问题根据数位计算1的个数核心问题在于解决思路,细节处理、调试耗费部分时间测试用例input:12output:5input:1output:1input:1073741824output:1036019223ac代码#include<iostream>using namespace std;int ma...原创 2019-08-21 14:00:23 · 1414 阅读 · 3 评论 -
1008 Elevator (20 分| 简单数学| 附详细注释,逻辑分析)
写在前面实现思路记录当前所在楼层、目的楼层,上差值乘6秒、下差值乘以4秒;每1次升降记录5秒停留时间更新当前所在楼层当前楼层等于目的楼层,记录停留时间(坑,没想到)10分钟 题,当然前提是理解题意测试用例input:3 2 3 1output:41ac代码#include<iostream>using namespace std;int mai...原创 2019-08-21 16:20:22 · 285 阅读 · 0 评论 -
A1078 Hashing (25 分| 素数| 平方探测法,附详细注释,逻辑分析)
写在前面实现思路读懂题意(部分英文关键词,,,)素数判断函数。n非素数,则查找大于n的最小素数无法被插入情况判断。如果枚举步长超过散列表长(循环节为TSize)仍无法找到具体位置,则不存在冲突插入位置(失分点)。格式输出控制存在失分点,获取满分有一定门槛。a题时间大约25分钟测试用例input:4 410 6 4 15output:0 1 4 -ac代...原创 2019-08-21 22:42:35 · 351 阅读 · 0 评论 -
1063 Set Similarity (25 分|set集合,附详细注释,逻辑分析)
写在前面实现思路理解题意(开始有点儿懵逼)定义集合数组,set<int> st[maxn]读取数据至对应集合中,通过集合下标对计算所求集合之间相似比元素级比较STL函数比较题目较为简单,理解题意耗费部分时间a题时间建议20分钟测试用例input:33 99 87 1014 87 101 5 877 99 101 18 5 135 18 ...原创 2019-08-21 23:38:40 · 180 阅读 · 0 评论 -
1060 Are They Equal (25 分| string常见用法,附详细注释,逻辑分析)
写在前面实现思路字符串存储、处理大数a、b分主体、指数指标进行计算统计整数部分,前导0小于1,小数部分前导0输入0比较转换后的主体、精度是否一致,一致打印YES,否则打印NO问题相对简单,细节处理较为耗时且易失分预计 35分钟,可能存在失分点测试用例input:3 12300 12358.9output:YES 0.123*10^5input:...原创 2019-08-22 00:51:27 · 162 阅读 · 0 评论 -
1028 List Sorting (25 分| 排序,附详细注释,逻辑分析)
写在前面实现思路结构体数组封装学生元数据信息自定义比较排序函数测试点题目较为基础,熟练情况下15分钟a题字符串比较可能耗费时间,待验证==、<=等比较符号问题strcmp无风险测试用例input:3 1000007 James 85000010 Amy 90000001 Zoe 60output:000001 Zoe 60000007 ...原创 2019-08-22 02:33:03 · 375 阅读 · 0 评论 -
1025 PAT Ranking (25 分| 排序,附详细注释,逻辑分析)
写在前面实现思路结构体数组封装学生元数据信息,也可用vector容器数组针对不同考场学生,局部排序local_rank、局部处理同分数问题学生整体排序,循环处理同分数问题并非降序final_rank打印学生信息另,下标初始值0。如非0开始涉及排序问题,逻辑处理变得繁琐题目不难,下标处理、排序函数耗费时间预计a题时间35分钟测试用例input:2512...原创 2019-08-22 14:16:56 · 285 阅读 · 0 评论 -
1004 Counting Leaves (30 分,附详细注释,逻辑分析)
写在前面实现思路深度有点遍历(BFS)vector容器封装树孩子节点递归更新每一层叶子节点个数、树的最大深度前提条件For the sake of simplicity, let us fix the root ID to be 01.知识盲点,学习ing,熟练耗时30分钟进军100分测试用例input:2 101 1 02output:0 1input...原创 2019-08-18 01:06:49 · 2647 阅读 · 2 评论 -
1065 A+B and C (64bit) (20 分| 简单模拟,附详细注释,逻辑分析)
写在前面实现思路long long 作为数据类型A, B and C in [−2^63 ,2^63 ]求和,根据是否溢出选择不同的逻辑正向溢出,true负向溢出,false非溢出,大于号成立,true非溢出,小于等于号成立,false题目相对简单,核心新知识点测试用例input:31 2 32 3 49223372036854775807...原创 2019-08-22 20:17:55 · 360 阅读 · 0 评论 -
1108 Finding Average (20 分| 字符串,附详细注释,逻辑分析)
写在前面实现思路字符数组存储输入数字通过sscanf、sprintf 处理读取字符串cstdio头文件下sscanf(a, "%lf", &real_num); : 将字符数组str中的内容以%lf格式写到real_num中(从左至右)sprintf(b, "%.2f",real_num); : 把real_num以%.2f形式写到str字符数组中字符循环对比、浮点...原创 2019-08-22 22:40:08 · 295 阅读 · 0 评论 -
1101 Quick Sort (25 分| 快速排序,附详细注释,逻辑分析)
写在前面实现思路基于快速排序事项3个数组,存储原始蓄力、左最大、右最小左最大、右最小初始化leftMax[0] = 0; rightMin[n-1] = inf;、迭代计算测试点直接暴力判断超时主元个数为0,需要输出换行题目有一定基础难度,35分钟a部分测试点满分较难,除非思路正确测试用例input:51 3 2 4 5output:31 4 ...原创 2019-08-26 12:59:55 · 307 阅读 · 0 评论 -
1098 Insertion or Heap Sort (25 分| 堆,附详细注释,逻辑分析)
写在前面实现思路英文单词shrinks : 收缩;减少测试用例input:103 1 2 8 7 5 9 4 6 01 2 3 7 8 5 9 4 6 0output:Insertion Sort1 2 3 5 7 8 9 4 6 0input:103 1 2 8 7 5 9 4 6 06 4 5 1 0 3 2 7 8 9output:Heap ...原创 2019-08-26 20:44:03 · 298 阅读 · 0 评论 -
1058 A+B in Hogwarts (20 分| 进制转换,附详细注释,逻辑分析)
写在前面实现思路整型数组存储3种不同进制数据不同进制累加求和过程中,引入进位处理另1思路统一为低位进制进行计算进制转换计算结果并打印输出问题点0号位(高位)无进制限制,不需要进位计算过程可能存在溢出情况,可用long long存储Galleon.Sickle.Knut (Galleon is an integer in [0,10^7], Sickle ...原创 2019-08-26 22:52:23 · 214 阅读 · 0 评论 -
1059 Prime Factors (25 分| 质因子分解,附详细注释,逻辑分析)
写在前面实现思路素数/质数判断函数循环生成素数码表质因子结构体循环遍历迭代记录并更新质因子、质因子幂指数质因子特殊处理,无法被根号n内的质因子除尽格式化打印输出质因子递增序指数大于1,输出幂指数prime : 质数问题点素数表大小 10^5n==1,特判核心问题: 方案实现,细节处理题目有一定难度,细节处理耗费时间45分钟测试用例...原创 2019-08-27 00:37:17 · 266 阅读 · 0 评论 -
1085 Perfect Sequence (25 分| two pointers,附详细注释,逻辑分析)
写在前面实现思路类two pointers 思想序列排序区间长度阈值计算,迭代更新问题点数据溢出p与序列中的元素范围[1,10^9], a[i]*p可能达到10^18,需使用long long进行强制类型转换,或直接把序列中的元素都定义为long long型。题目较为简单,15分钟a题测试用例input:10 82 3 20 4 5 1 6 7 8 ...原创 2019-08-27 17:16:59 · 279 阅读 · 0 评论 -
1083 List Grades (25 分| 排序,附详细注释,逻辑分析)
写在前面实现思路结构体封装学生元数据信息非递增排序循环,区间合法打印输出题目较为简单,10分钟内a题测试用例input:4Tom CS000001 59Joe Math990112 89Mike CS991301 100Mary EE990830 9560 100output:Mike CS991301Mary EE990830Joe Math9901...原创 2019-08-27 18:21:06 · 200 阅读 · 0 评论 -
1015 Reversible Primes (20 分| 素数,附详细注释,逻辑分析)
写在前面实现思路素数判断函数进制转换实现素数判断并打印输出结果英文单词reversible prime可逆素数decimal system十进位制;十进位系统number system数字系统;进制radix【数】基数;根值问题点while(scanf("%d", &n) != EOF)if(n<=1) return false;...原创 2019-08-28 10:54:19 · 392 阅读 · 0 评论 -
1041 Be Unique (20 分| 散列,附详细注释,逻辑分析)
写在前面实现思路定义输入数数组,hashtable数组[1, 10^4]输入数作为下标,hashtable记录并次数迭代求和循环遍历原始数组,查找hashtabke中第1个出现次数为1的数问题点数组长度、数据范围超时,scanf输入,cin超时题目较为简单,10分钟a题测试用例input:7 5 31 5 88 67 88 17output:31inp...原创 2019-08-28 12:50:29 · 253 阅读 · 0 评论 -
1097 Deduplication on a Linked List (25 分| 链表处理,附详细注释,逻辑分析)
写在前面实现思路静态链表封装存储输入结点(注意结构体变量)初始化,循环计数有效结点个数、无效结点个数序号赋值,结点排序输出链表其中,最后1个未删除结点、最后1个被删除节点单独处理问题点%05d 格式控制。-1特殊处理不能格式化输出可能存在无效结点,即不在给出首地址开始的链表上题目有1定难度,25分钟a题测试用例input:00100 599999 ...原创 2019-08-28 16:17:07 · 503 阅读 · 2 评论 -
1090 Highest Price in Supply Chain (25 分| 树的遍历,附详细注释,逻辑分析)
写在前面实现思路理解题意(没读太懂)dfs计算树的最大深度、最大深度结点个数最高价格计算问题点根节点的价格为p,无须乘以1+rr 为百分数输入中第2行给定的是i号结点的父亲结点有难度,45分钟a题测试用例input:9 1.80 1.001 5 4 4 -1 4 5 3 6output:1.85 2ac代码#include <cstdio&...原创 2019-08-28 17:24:10 · 227 阅读 · 0 评论 -
1081 Rational Sum (20 分| 分数的四则运算,附详细注释,逻辑分析)
写在前面实现思路最大公约数分数约分函数分数求和函数结果打印函数问题点分子为0、负数处理数据类型,范围溢出每步计算、每步约分计算最大公约数,注意计算分子、分母绝对值的公约数题目简单,20分钟a题英文单词Rational Sum有理数求和numerator / denominator分子 / 分母fractional part小数部分测试用例...原创 2019-08-28 19:29:04 · 301 阅读 · 0 评论 -
A1104 Sum of Number Segments (20 分| 简单数学,附详细注释,逻辑分析)
写在前面实现思路测试用例input:40.1 0.2 0.3 0.4output:5.00ac代码#include <cstdio>#include <iostream>using namespace std;int main(){ int n; double v, ans = 0; scanf("%d", &...原创 2019-08-30 00:51:49 · 318 阅读 · 1 评论 -
A1109. Group Photo (25| 逻辑题,附详细注释,逻辑分析)
写在前面实现思路结构体容器数组封装学生元数据信息自定义比较函数容器数组根据身高倒排后,分排某一排,从原始数组中取第1位放中间间隔顺序迭代放置左边、右边具体代码for(i=t+1; i<t+m; i=i+2)for(i=t+2; i<t+m; i=i+2)打印输出当前排注意输出格式,行末不得有多余空格实现方案有难度,多练习,否则该类题目有...原创 2019-08-31 12:30:48 · 247 阅读 · 0 评论 -
A1116. Come on! Let’s C (20| 简单逻辑题,附详细注释,逻辑分析)
写在前面实现思路质数 / 素数判断函数字符串容器数组封装打印结果集读入初始输入并标记奖励award类型格式控制打印输出,已查询过的ID,迭代更新状态题目简单,15分钟a题测试用例input:61111666688881234555500016888800011111222288882222output:8888: Minion00...原创 2019-08-31 14:45:50 · 221 阅读 · 0 评论 -
A1120 Friend Numbers (20 分| set应⽤,附详细注释,逻辑分析)
写在前面实现思路核心语段Two integers are called "friend numbers" if they share the same sum of their digitsthe sum is their "friend ID"outputprint in the first line the number of different frind ID's am...原创 2019-08-31 15:43:50 · 131 阅读 · 0 评论 -
A1132 Cut Integer (20 分| 数学问题,附详细注释,逻辑分析)
写在前面实现思路字符串转换、处理to_string函数stoi函数很巧妙方案耗费部分时间,15分钟a题英文单词even : 偶数, 平滑的, 平坦的even number : 偶数问题点数据类型浮点错误测试点2、测试点3余数和除数不能为0if(a*b !=0 && num % (a*b)==0)测试用例...原创 2019-08-31 16:04:48 · 166 阅读 · 0 评论