PAT甲级

PAT 甲级(Advance)

一、考试大纲

在达到乙级要求的基础上,还要求:
1· 具有充分的英文阅读理解能力;
2· 理解并掌握基础数据结构,包括:线性表、树、图;
3· 理解并熟练编程实现经典高级算法,包括哈希映射、并查集、最短路径、拓扑排序、关键路径、贪心、深度优先搜索、广度优先搜索、回溯剪枝等;
4· 具备较强的问题抽象和建模能力,能实现对复杂实际问题的模拟求解。

二、刷题方法

三、我的题解

3-1 按题号索引:

题号 题目 题解 分类 备注
1001 PAT A1001 A+B Format c++ 字符串 按位处理
1002 PAT A1002 A+B for Polynomials c++ 数学 多项式
1003 PAT A1003 Emergency c++ 最短路径
1004 PAT A1004 Counting Leaves c++ 树的遍历
1005 PAT A1005 Spell It Right c++ 字符串 按位处理
1006 PAT A1006 Sign In and Sign Out c++ 水题 进制转换
1007 PAT A1007 Maximum Subsequence Sum c++ 动态规划 最大连续子序列和
1008 PAT A1008 Elevator c++ 水题 数学
1009 PAT A1009 Product of Polynomials c++ 数学 多项式
1010 PAT A1010 Radix c++ 二分法 数据表示:溢出
1011 PAT A1011 World Cup Betting c++ 水题
1012 PAT A1012 The Best Rank c++ 排序
1013 PAT A1013 Battle Over Cities c++ 图的遍历:求联通块数 、并查集
▲1014 PAT A1014 Waiting in Line (30point(s)) c++ 队列 模拟
1015 PAT A1015 Reversible Primes c++ 数学 素数、进制转换
★1016 PAT A1016 Phone Bills c++ 排序
▲1017 PAT A1017 Queueing at Bank (25point(s)) c++ 队列 模拟,优先队列
★1018 PAT A1018 Public Bike Management c++ 最短路径
1019 PAT A1019 General Palindromic Number c++ 数学 进制转换
★1020 PAT A1020 Tree Traversals c++ 树:二叉树 后序、中序建树
★1021 PAT A1021 Deepest Root c++ 图的遍历、并查集求联通块
1022 PAT A1022 Digital Library c++ STL map、查找
1023 PAT A1023 Have Fun with Numbers c++ 数学 大整数乘法
1024 PAT A1024 Palindromic Number c++ 数学 大整数加法
1025 PAT A1025 PAT Ranking c++ 排序
▲1026 PAT A1026 Table Tennis (30point(s)) c++ 快乐模拟 没写完
1027 PAT A1027 Colors in Mars c++ 数学进 制转换
1028 PAT A1028 List Sorting c++ 排序
1029 PAT A1029 Median c++ 排序、 双指针
1030 PAT A1030 Travel Plan c++ 最短路径
1031 PAT A1031 Hello World for U c++ 图形输出
1032 PAT A1032 Sharing c++ 链表 公共后缀
★1033 PAT A1033 To Fill or Not to Fill c++ 贪心
★1034 PAT A1034 Head of a Gang c++ 图、并查集 DFS
1035 PAT A1035 Password c++ 字符串 按位处理
1036 PAT A1036 Boys vs Girls c++ 查找 最值
1037 PAT A1037 Magic Coupon c++ 贪心
1038 PAT A1038 Recover the Smallest Number c++ 贪心
1039 PAT A1039 Course List for Student c++ STL、散列 map、A1047
1040 PAT A1040 Longest Symmetric String (25point(s)) c++ 动态规划 最长回文子串
1041 PAT A1041 Be Unique c++ 散列
1042 PAT A1042 Shuffling Machine c++ 水题
★1043 PAT A1043 Is It a Binary Search Tree c++ 树:BST 二叉排序树
1044 PAT A1044 Shopping in Mars c++ 双指针法 二分法
1045 PAT A1045 Favorite Color Stripe (30point(s)) c++ 动态规划 最长不下降子序列:LIS
1046 PAT A1046 Shortest Distance c++ 水题 降维
1047 PAT A1047 Student List for Course c++ STL、散列 map、A1039
1048 PAT A1048 Find Coins c++ 散列 双指针法
★1049 PAT A1049 Counting Ones c++ 数学 递推
1050 PAT A1050 String Subtraction c++ 散列
★1051 PAT A1051 Pop Sequence c++ 模拟栈
1052 PAT A1052 Linked List Sorting c++ 链表 链表排序
1053 PAT A1053 Path of Equal Weight c++ DFS
1054 PAT A1054 The Dominant Color c++ STL map、特殊
1055 PAT A1055 The World’s Richest c++ 排序
★1056 PAT A1056 Mice and Rice c++ 队列
1057 PAT A1057 Stack c++ 在线查询 分块查找、树状数组
1058 PAT A1058 A+B in Hogwarts c++ 进制转换
★1059 PAT A1059 Prime Factors c++ 数学 分解质因数
★1060 PAT A1060 Are They Equal c++ 字符串、数学 科学计数法
1061 PAT A1061 Dating c++ 字符串
1062 PAT A1062 Talent and Virtue c++ 排序
1063 PAT A1063 Set Similarity c++ STL、并查集 set
1064 PAT A1064 Complete Binary Search Tree c++ BST,CBT,树的遍历 同1099
1065 PAT A1065 A+B and C (64bit) c++ 计组 溢出判断
1066 PAT A1066 Root of AVL Tree c++ AVL
1067 PAT A1067 Sort with Swap(0, i) c++ 贪心
1068 PAT A1068 Find More Coins (30point(s)) c++ 动态规划 01背包问题
★1069 PAT A1069 The Black Hole of Numbers c++ 字符串
1070 PAT A1070 Mooncake c++ 贪心
★1071 PAT A1071 Speech Patterns c++ STL 、字符串 map、分词
1072 PAT A1072 Gas Station c++ 最短路径
1073 PAT A1073 Scientific Notation c++ 字符串 科学计数法
★1074 PAT A1074 Reversing Linked List c++ 链表 头插法、链表翻转
★1075 PAT A1075 PAT Judge c++ 排序
1076 PAT A1076 Forwards on Weibo c++ BFS
1077 PAT A1077 Kuchiguse c++ 字符串 公共suffix
1078 PAT A1078 Hashing c++ 散列 平方探测法
1079 PAT A1079 Total Sales of Supply Chain c++ 树的遍历 A1090 A1106
1080 PAT A1080 Graduate Admission c++ 排序 排名
★1081 PAT A1081 Rational Sum c++ 数学 分数四则运算
★1082 PAT A1082 Read Number in Chinese c++ 字符串
1083 PAT A1083 List Grades c++ 排序
1084 PAT A1084 Broken Keyboard c++ 散列 双指针法
1085 PAT A1085 Perfect Sequence c++ 二分法、双指针法
1086 PAT A1086 Tree Traversals Again c++ 树的遍历:前中 转 后
1087 PAT A1087 All Roads Lead to Rome c++ 最短路径
★1088 PAT A1088 Rational Arithmetic c++ 数学 分数四则运算
1089 PAT A1089 Insert or Merge c++ 排序、双指针法 归并、插入排序 同 A1098
1090 PAT A1090 Highest Price in Supply Chain c++ 树的遍历 A1079 A1106
1091 PAT A1091 Acute Stroke c++ BFS、栈实现DFS
1092 PAT A1092 To Buy or Not to Buy c++ 字符串 散列
1093 PAT A1093 Count PAT’s c++ 递推 打表
1094 PAT A1094 The Largest Generation c++ 树的遍历
★1095 PAT A1095 Cars on Campus c++ 排序 打表、参考Phone Bills
1096 PAT A1096 Consecutive Factors (20point(s)) c++ 数学 分解质因子
1097 PAT A1097 Deduplication on a Linked List c++ 链表 链表删除
★★1098 PAT A1098 Insertion or Heap Sort (思路3:make_heap()等函数用法) c++ 排序 堆 Heap 同 A1089
1099 PAT A1099 Build A Binary Search Tree c++ BST、树的遍历 同 A1064
★1100 PAT A1100 Mars Numbers c++ 数学 map、进制转换
1101 PAT A1101 Quick Sort c++ 排序 快排、打表法
1102 PAT A1102 Invert a Binary Tree c++ 翻转遍历
1103 PAT A1103 Integer Factorization c++ DFS
1104 PAT A1104 Sum of Number Segments c++ 数学 概念理解
1105 PAT A1105 Spiral Matrix c++ 图形输出 增量数组,控制方向
1106 PAT A1106 Lowest Price in Supply Chain c++ 树的遍历 同A1090,及1079
★1107 PAT A1107 Social Clusters c++ 并查集
★1108 PAT A1108 Finding Average c++ 字符串 sscanf,sprintf用法
★1109 PAT A1109 Group Photo c++ 图形输出 双端队列,增量数组
1110 PAT A1110 Complete Binary Tree (25point(s)) c++ 树的遍历:完全二叉树
1111 PAT A1111 Online Map c++ 最短路径
★1112 PAT A1112 Stucked Keyboard c++ 双指针法
1113 PAT A1113 Integer Set Partition c++ 水题 贪心
★1114 PAT A1114 Family Property c++ 并查集 记数并查集 同 A1118 Birds and Forest
1115 PAT A1115 Counting Nodes in a BST c++ BST:插入,遍历
1116 PAT A1116 Come on! Let’s C c++ 水题 数学
1117 PAT A1117 Eddington Number c++ 水题 数学
1118 PAT A1118 Birds in Forest c++ 并查集 统计数量
★1119 PAT A1119 Pre- and Post-order Traversals c++ 前序后序建树
1120 PAT A1120 Friend Numbers c++ 散列、STL map
1121 PAT A1121 Damn Single c++ 散列 危险品问题
1122 PAT A1122 Hamiltonian Cycle c++ 简单环路
1123 PAT A1123 Is It a Complete AVL Tree c++ AVL,CBT
1124 PAT A1124 Raffle for Weibo Followers c++ 散列 线性探测
1125 PAT A1125 Chain the Ropes c++ 贪心
1126 PAT A1126 Eulerian Path c++ 图论 图论 : 欧拉环
1127 PAT A1127 ZigZagging on a Tree c++ 后序中序建树
1128 PAT A1128 N Queens Puzzle c++ N皇后
★1129 PAT A1129 Recommendation System c++ 排序 下标排序,容器重写排序规则
1130 PAT A1130 Infix Expression c++ 中缀表达式树,遍历
★1131 PAT A1131 Subway Map (30point(s)) c++ 最短路径,堆优化.,剪枝
1132 PAT A1132 Cut Integer c++ 水题 字符串
1133 PAT A1133 Splitting A Linked List c++ 链表 链表排序
1134 PAT A1134 Vertex Cover c++ 图论: 联通块数, 遍历
★1135 PAT A1135 Is It A Red-Black Tree (30point(s)) c++ 红黑树
1136 PAT A1136 A Delayed Palindrome c++ 数学 回文数,大整数加法
★1137 PAT A1137 Final Grading c++ 排序
1138 PAT A1138 Postorder Traversal c++ 前序 中序转后序
★1139 PAT A1139 First Contact (30point(s)) c++ 枚举
1140 PAT A1140 Look-and-say Sequence c++ 双指针法
★1141 PAT A1141 PAT Ranking of Institutions c++ 排序
★1142 PAT A1142 Maximal Clique (25point(s)) c++ 图论
★1143 PAT A1143 Lowest Common Ancestor c++ LCA:最小公共祖先
1144 PAT A1144 The Missing Number c++ 散列 水题
★1145 PAT A1145 Hashing - Average Search Time c++ 散列 平方探测
1146 PAT A1146 Topological Order (25point(s)) c++ 图论:拓扑排序
1147 PAT A1147 Heaps (30point(s)) c++ 堆 Heap
1148 PAT A1148 Werewolf - Simple Version (20point(s)) c++ 模拟 枚举
1149 PAT A1149 Dangerous Goods Packaging (25point(s)) c++ 散列 危险品问题,Multimap
1150 PAT A1150 Travelling Salesman Problem (25point(s)) c++ 图论 :简单环
★1151 PAT A1151 LCA in a Binary Tree c++ LCA:最小公共祖先
1152 PAT A1152 Google Recruitment c++ 数学 素数
1153 PAT A1153 Decode Registration Card of PAT (25point(s)) c++ 排序 结构体排序
1154 PAT A1154 Vertex Coloring (25point(s)) c++ 图论:Vertex Coloring
★1155 PAT A1155 Heap Paths (30point(s)) c++ 堆 Heap

▲为 超纲问题 , ★ 为 做起来比较困难 ;

3-2 按tag索引:

Tag 1. 水题

  • 水题
题号 题目 题解 分类 备注
1006 PAT A1006 Sign In and Sign Out c++ 水题 最值
1011 PAT A1011 World Cup Betting c++ 水题 最值
1036 PAT A1036 Boys vs Girls c++ 水题 最值
1008 PAT A1008 Elevator c++ 水题
1042 PAT A1042 Shuffling Machine c++ 水题
1046 PAT A1046 Shortest Distance c++ 水题 降维
1148 PAT A1148 Werewolf - Simple Version c++ “水题” 枚举
  • 图形输出
题号 题目 题解 分类 备注
1031 PAT A1031 Hello World for U c++ 图形输出
1105 PAT A1105 Spiral Matrix c++ 图形输出 增量数组,控制方向
★1109 PAT A1109 Group Photo c++ 图形输出 双端队列,增量数组

Tag 2. 技巧

  • 打表法
题号 题目 题解 分类 备注
1093 PAT A1093 Count PAT’s c++ 递推 打表
1101 PAT A1101 Quick Sort c++ 排序 快排、打表法
  • 溢出
题号 题目 题解 分类 备注
1065 PAT A1065 A+B and C (64bit) c++ 计组 溢出判断

Tag 3. 数学

  • 多项式
题号 题目 题解 分类 备注
1002 PAT A1002 A+B for Polynomials c++ 数学 多项式
1009 PAT A1009 Product of Polynomials c++ 数学 多项式
  • 概念理解
题号 题目 题解 分类 备注
1104 PAT A1104 Sum of Number Segments c++ 数学 概念理解
1117 PAT A1117 Eddington Number c++ 数学 概念理解
★1049 PAT A1049 Counting Ones c++ 数学 递推
  • 进制转换
题号 题目 题解 分类 备注
1019 PAT A1019 General Palindromic Number c++ 数学 进制转换
1027 PAT A1027 Colors in Mars c++ 数学 进制转换
1058 PAT A1058 A+B in Hogwarts c++ 数学 进制转换
★1100 PAT A1100 Mars Numbers c++ 数学 map、进制转换
  • 素数
题号 题目 题解 分类 备注
1015 PAT A1015 Reversible Primes c++ 数学 素数、进制转换
1116 PAT A1116 Come on! Let’s C c++ 数学 素数
1152 PAT A1152 Google Recruitment c++ 数学 素数
  • 分解质因数:
题号 题目 题解 分类 备注
★1059 PAT A1059 Prime Factors c++ 数学 分解质因数
1096 PAT A1096 Consecutive Factors c++ 数学 分解质因子
  • 大整数
题号 题目 题解 分类 备注
1023 PAT A1023 Have Fun with Numbers c++ 数学 大整数乘法
1024 PAT A1024 Palindromic Number c++ 数学 大整数加法
1136 PAT A1136 A Delayed Palindrome c++ 数学 回文数,大整数加法
  • 分数模拟:
题号 题目 题解 分类 备注
★1081 PAT A1081 Rational Sum c++ 数学 分数四则运算
★1088 PAT A1088 Rational Arithmetic c++ 数学 分数四则运算

Tag 4. STL

  • 字符串
题号 题目 题解 分类 备注
1001 PAT A1001 A+B Format c++ 字符串 按位处理
1005 PAT A1005 Spell It Right c++ 字符串 按位处理
1035 PAT A1035 Password c++ 字符串 按位处理
★1060 PAT A1060 Are They Equal c++ 字符串、数学 科学计数法
1061 PAT A1061 Dating c++ 字符串
★1069 PAT A1069 The Black Hole of Numbers c++ 字符串
1073 PAT A1073 Scientific Notation c++ 字符串 科学计数法
1077 PAT A1077 Kuchiguse c++ 字符串 公共suffix
★1082 PAT A1082 Read Number in Chinese c++ 字符串
1092 PAT A1092 To Buy or Not to Buy c++ 字符串 散列
★1108 PAT A1108 Finding Average c++ 字符串 sscanf,sprintf用法
★1112 PAT A1112 Stucked Keyboard c++ 字符串
1132 PAT A1132 Cut Integer c++ 字符串 子串截取
★1071 PAT A1071 Speech Patterns c++ 字符串 分词、子串截取
  • Map
题号 题目 题解 分类 备注
1022 PAT A1022 Digital Library c++ STL map、查找、分词
1039 PAT A1039 Course List for Student c++ STL、散列 map
1047 PAT A1047 Student List for Course c++ STL、散列 map
  • Set
题号 题目 题解 分类 备注
1063 PAT A1063 Set Similarity c++ STL set
1120 PAT A1120 Friend Numbers c++ STL set,map
  • 特殊技巧
题号 题目 题解 分类 备注
★1129 PAT A1129 Recommendation System c++ 排序 下标排序,容器重写排序规则
1149 PAT A1149 Dangerous Goods Packaging c++ 散列 危险品问题,Multimap

Tag 5. 线性表

  • 链表
题号 题目 题解 分类 备注
1032 PAT A1032 Sharing c++ 链表 公共后缀
1052 PAT A1052 Linked List Sorting c++ 链表 链表排序
★1074 PAT A1074 Reversing Linked List c++ 链表 头插法、链表翻转
1097 PAT A1097 Deduplication on a Linked List c++ 链表 链表删除
1133 PAT A1133 Splitting A Linked List c++ 链表 链表排序
题号 题目 题解 分类 备注
★1051 PAT A1051 Pop Sequence c++ 模拟栈
  • 队列
题号 题目 题解 分类 备注
★1056 PAT A1056 Mice and Rice c++ 队列
▲1014 PAT A1014 Waiting in Line c++ 队列 模拟
▲1017 PAT A1017 Queueing at Bank c++ 队列 模拟,优先队列
▲1026 PAT A1026 Table Tennis c++ 快乐模拟 没写完

Tag 4. 树

  • 树的遍历:
题号 题目 题解 分类 备注
1004 PAT A1004 Counting Leaves c++ 树的遍历
1094 PAT A1094 The Largest Generation c++ 树的遍历
1053 PAT A1053 Path of Equal Weight c++ 树的遍历
1079 PAT A1079 Total Sales of Supply Chain c++ 树的遍历
1090 PAT A1090 Highest Price in Supply Chain c++ 树的遍历
1106 PAT A1106 Lowest Price in Supply Chain c++ 树的遍历
1102 PAT A1102 Invert a Binary Tree c++ 树的遍历:翻转二叉树
1110 PAT A1110 Complete Binary Tree c++ 树的遍历: CBT
1130 PAT A1130 Infix Expression c++ 中缀表达式树,遍历
  • 建树:
题号 题目 题解 分类 备注
1020 PAT A1020 Tree Traversals c++ 后中 转 层
1086 PAT A1086 Tree Traversals Again c++ 前中 转 后
★1119 PAT A1119 Pre- and Post-order Traversals c++ 前后 转 中
1127 PAT A1127 ZigZagging on a Tree c++ 后中 转 层(zig)
1138 PAT A1138 Postorder Traversal c++ 前中 转 后
还原二叉树 层中 转 先后
  • 已知树形填入节点:
题号 题目 题解 分类 备注
1064 PAT A1064 Complete Binary Search Tree c++ BST,CBT,树的遍历
1099 PAT A1099 Build A Binary Search Tree c++ BST、树的遍历
  • BST
题号 题目 题解 分类 备注
★1043 PAT A1043 Is It a Binary Search Tree c++ BST
1064 PAT A1064 Complete Binary Search Tree c++ BST,CBT,树的遍历
1099 PAT A1099 Build A Binary Search Tree c++ BST、树的遍历
1115 PAT A1115 Counting Nodes in a BST c++ BST:插入,遍历
  • AVL
题号 题目 题解 分类 备注
1066 PAT A1066 Root of AVL Tree c++ AVL
1123 PAT A1123 Is It a Complete AVL Tree c++ AVL,CBT
  • Heap
题号 题目 题解 分类 备注
★★1098 PAT A1098 Insertion or Heap Sort (思路3:make_heap()等函数用法) c++ 排序 堆 Heap 同 A1089
1147 PAT A1147 Heaps c++ 堆 Heap
★1155 PAT A1155 Heap Paths c++ 堆 Heap
  • 红黑树(简单版)
题号 题目 题解 分类 备注
★1135 PAT A1135 Is It A Red-Black Tree c++ 红黑树
  • LCA:最小公共祖先(简单版)
题号 题目 题解 分类 备注
★1143 PAT A1143 Lowest Common Ancestor c++ LCA:最小公共祖先
★1151 PAT A1151 LCA in a Binary Tree c++ LCA:最小公共祖先

Tag 5. 图

  • 图的遍历
题号 题目 题解 分类 备注
★1034 PAT A1034 Head of a Gang c++ 图的遍历
1076 PAT A1076 Forwards on Weibo c++ 图的遍历
1091 PAT A1091 Acute Stroke c++ 图的遍历,自己栈DFS
★1103 PAT A1103 Integer Factorization c++ 图的遍历
1013 PAT A1013 Battle Over Cities c++ 图的遍历、并查集求联通块
★1021 PAT A1021 Deepest Root c++ 图的遍历、并查集求联通块
1054 PAT A1054 The Dominant Color c++ 水题,特殊方法
★1139 PAT A1139 First Contact c++ 枚举
★1131 PAT A1131 Subway Map c++ 最短路径
2019机试
  • 最短路径:
题号 题目 题解 分类 备注
1003 PAT A1003 Emergency c++ 最短路径
★1018 PAT A1018 Public Bike Management c++ 最短路径
1030 PAT A1030 Travel Plan c++ 最短路径
1072 PAT A1072 Gas Station c++ 最短路径
1087 PAT A1087 All Roads Lead to Rome c++ 最短路径
1111 PAT A1111 Online Map c++ 最短路径
★1131 PAT A1131 Subway Map c++ 最短路径
  • 图论:概念理解题 + 合法性判断
题号 题目 题解 分类 备注
1122 PAT A1122 Hamiltonian Cycle c++ 图论 : 简单环路
1126 PAT A1126 Eulerian Path c++ 图论 图论 : 欧拉环
1128 PAT A1128 N Queens Puzzle c++ 图论 : N皇后
1134 PAT A1134 Vertex Cover c++ 图论: 联通块数
★1142 PAT A1142 Maximal Clique c++ 图论
1146 PAT A1146 Topological Order c++ 图论:拓扑排序
1150 PAT A1150 Travelling Salesman Problem c++ 图论 :简单环
1154 PAT A1154 Vertex Coloring c++ 图论:Vertex Coloring

Tag 6. 排序与查找:

  • 排序
题号 题目 题解 分类 备注
1012 PAT A1012 The Best Rank c++ 排序
1025 PAT A1025 PAT Ranking c++ 排序
★1075 PAT A1075 PAT Judge c++ 排序
★★1141 PAT A1141 PAT Ranking of Institutions c++ 排序
★1137 PAT A1137 Final Grading c++ 排序
★1016 PAT A1016 Phone Bills c++ 排序
★1095 PAT A1095 Cars on Campus c++ 排序 打表
1028 PAT A1028 List Sorting c++ 排序
1083 PAT A1083 List Grades c++ 排序
1055 PAT A1055 The World’s Richest c++ 排序
1062 PAT A1062 Talent and Virtue c++ 排序
1080 PAT A1080 Graduate Admission c++ 排序
1089 PAT A1089 Insert or Merge c++ 排序 归并、插入排序
1098 PAT A1098 Insertion or Heap Sort (思路3:make_heap()等函数用法) c++ 排序 堆 Heap
★1129 PAT A1129 Recommendation System c++ 排序 下标排序,容器重写排序规则
1153 PAT A1153 Decode Registration Card of PAT c++ 排序 结构体排序
  • 二分法与双指针法
  • 双指针法
题号 题目 题解 分类 备注
1029 PAT A1029 Median c++ 双指针法
★1112 PAT A1112 Stucked Keyboard c++ 双指针法
1140 PAT A1140 Look-and-say Sequence c++ 双指针法
1044 PAT A1044 Shopping in Mars c++ 双指针法
1048 PAT A1048 Find Coins c++ 双指针法
1085 PAT A1085 Perfect Sequence c++ 双指针法
  • 二分法
题号 题目 题解 分类 备注
1010 PAT A1010 Radix c++ 二分法 数据表示:溢出
1044 PAT A1044 Shopping in Mars c++ 二分法
1048 PAT A1048 Find Coins c++ 二分法
1085 PAT A1085 Perfect Sequence c++ 二分法
  • 散列
题号 题目 题解 分类 备注
1041 PAT A1041 Be Unique c++ 散列 水题
1048 PAT A1048 Find Coins c++ 散列
1050 PAT A1050 String Subtraction c++ 散列 水题
1084 PAT A1084 Broken Keyboard c++ 散列 双指针法
1144 PAT A1144 The Missing Number c++ 散列 水题
1121 PAT A1121 Damn Single c++ 散列 危险品问题
1149 PAT A1149 Dangerous Goods Packaging c++ 散列 危险品问题,Multimap
  • hash探测
题号 题目 题解 分类 备注
1078 PAT A1078 Hashing c++ 散列 平方探测法
1124 PAT A1124 Raffle for Weibo Followers c++ 散列 线性探测法
★1145 PAT A1145 Hashing - Average Search Time c++ 散列 平方探测
  • 并查集
题号 题目 题解 分类 备注
★1107 PAT A1107 Social Clusters c++ 并查集
★1114 PAT A1114 Family Property c++ 并查集 统计数量
1118 PAT A1118 Birds in Forest c++ 并查集 统计数量
1034 PAT A1034 Head of a Gang c++ 图的遍历、并查集求联通块
1013 PAT A1013 Battle Over Cities c++ 图的遍历、并查集求联通块
1021 PAT A1021 Deepest Root c++ 图的遍历、并查集求联通块
  • 树状数组
题号 题目 题解 分类 备注
1057 PAT A1057 Stack c++ 在线查询 分块查找、树状数组

Tag 7. 最优化问题

  • 贪心
题号 题目 题解 分类 备注
★1033 PAT A1033 To Fill or Not to Fill c++ 贪心
1037 PAT A1037 Magic Coupon c++ 贪心
1038 PAT A1038 Recover the Smallest Number c++ 贪心
1067 PAT A1067 Sort with Swap(0, i) c++ 贪心
1070 PAT A1070 Mooncake c++ 贪心
1113 PAT A1113 Integer Set Partition c++ 贪心
1125 PAT A1125 Chain the Ropes c++ 贪心
  • DP
题号 题目 题解 分类 备注
1007 PAT A1007 Maximum Subsequence Sum c++ 动态规划 最大连续子序列和
1040 PAT A1040 Longest Symmetric String (25point(s)) c++ 动态规划 最长回文子串
1045 PAT A1045 Favorite Color Stripe (30point(s)) c++ 动态规划 最长不下降子序列:LIS
1068 PAT A1068 Find More Coins (30point(s)) c++ 动态规划 01背包问题

你可能感兴趣的:(PAT,A)