- 博客(89)
- 收藏
- 关注
原创 PTA甲级考试真题练习147——1147 Heaps
题目思路水题代码#include <iostream>#include <vector>using namespace std;vector<int> vec,post;int n, m;int mark[2];void DFS(int i){ int pa = i/2; if (pa) { if (vec[pa] < ve...
2020-04-30 22:28:07 179
原创 PTA甲级考试真题练习146——1146 Topological Order
题目思路对于每个拓扑序列,顺序判断每个结点入度是否为0,如果不是就不是拓扑,如果是则将该结点为出度的其他结点入度减1,然后检测下一个节点代码#include <iostream>#include <vector>using namespace std;vector<vector<int>> vec;vector<int>...
2020-04-29 22:12:56 161
原创 PTA甲级考试真题练习145——1145 Hashing - Average Search Time
题目思路主要是对hash表搜索时间的题意理解,对于一个数据,如果找到它或者是发现它不存在就应该停止搜索,否则就要搜索msize次才能退出代码#include <iostream>#include <vector>using namespace std;vector<int> vec;int msize, n, m;int sum_all = ...
2020-04-29 19:55:02 151
原创 PTA甲级考试真题练习144——1144 The Missing Number
题目思路使用set集合兼并了去重加排序的过程,再遍历set集合哪个数字没有就break代码#include <iostream>#include <set>using namespace std;int main(){ int n; cin >> n; set<int> vec; for (int i = 0; i <...
2020-04-29 12:14:11 155
原创 PTA甲级考试真题练习143——1143 Lowest Common Ancestor
题目思路二叉搜索树说明中序遍历也已经固定,则用先序和中序构造二叉搜索树,然后进行分别查找,如果没查找到就输出,否则,将两次查找路径保存下来进行比较,找出第一个不相同的结点,他们的上一个相同节点就是结果,如果没有找到,则肯定一个结点是另一个结点的父节点,输出即可代码#include <iostream>#include <vector>#include <...
2020-04-28 23:18:16 195
原创 PTA甲级考试真题练习142——1142 Maximal Clique
题目思路暴力搜索代码#include <iostream>#include <vector>using namespace std;const int nmax = 201;int graph[nmax][nmax] = { 0 };int visited[nmax];int n, m;int Judge(int num) { vector<...
2020-04-28 20:28:42 113
原创 PTA甲级考试真题练习141——1141 PAT Ranking of Institutions
题目思路简单排序题代码#include <iostream>#include <vector>#include <unordered_map>#include <algorithm>#include <string.h>using namespace std;struct info { double sum; ...
2020-04-27 22:56:50 142
原创 PTA甲级考试真题练习140——1140 Look-and-say Sequence
题目思路水题代码#include <iostream>#include <string.h>#include<sstream>using namespace std;int main(){ string num; int n; cin >> num >> n; for (int i = 0; i < n ...
2020-04-27 20:46:04 137
原创 PTA甲级考试真题练习139——1139 First Contact
题目思路使用一个20000容量的邻接图,如果是女生的话就本身的编号+10000得到女生ID,然后找出男生的女生朋友,找出女生的同性朋友,看他们两个是不是朋友坑点如果是同性恋的话,当a和b是朋友的时候,会出现a找到b,b找到a,然后a和b是朋友,所以说a不能等于c,d不能等于b,要注意!!!代码#include <iostream>#include <vector&...
2020-04-27 19:48:37 276
原创 PTA甲级考试真题练习138——1138 Postorder Traversal
题目思路水题代码#include <iostream>#include <vector>using namespace std;vector<int> pre, in;bool first = false;bool findPost(int low, int high, int cur) { if (low > high) ret...
2020-04-26 21:25:36 393
原创 PTA甲级考试真题练习137——1137 Final Grading
题目思路排序题,存入unordered_map再传入vector排序后输出代码#include <iostream>#include <vector>#include <unordered_map>#include <algorithm>using namespace std;struct Info { int gp, gm, ...
2020-04-26 20:59:47 187
原创 PTA甲级考试真题练习136——1136 A Delayed Palindrome
题目思路一道字符串处理+长整数加法的综合体代码#include <iostream>#include <vector>#include <algorithm>#include <string.h>using namespace std;bool Judge(string num) { int k, i, j; if (num...
2020-04-25 22:32:49 139
原创 PTA甲级考试真题练习134——1134 Vertex Cover
题目思路由于邻接矩阵内存爆炸,邻接表不方便标记边,于是想到利用邻接多重表,注意在邻接多重表中使用标记数组,而不是标记,这样每次查询就可以使用不同的标记数组。代码#include <iostream>#include <vector>using namespace std;const int nmax = 110;typedef struct node {...
2020-04-25 13:34:09 205
原创 PTA甲级考试真题练习133——1133 Splitting A Linked List
题目思路遍历链表,存到三个数组,再拼接数组输出即可# 代码#include <iostream>#include <vector>#include <algorithm>using namespace std;const int nmax = 100010;const int inf = 2147483647;int Next[nmax] =...
2020-04-25 11:39:52 405
原创 PTA甲级考试真题练习132——1132 Cut Integer
题目思路水题代码#include <iostream>using namespace std;int main(){ string s; int n; cin >> n; for (int i = 0; i < n; ++i) { cin >> s; int k = stoi(s); int k1 = stoi(s.su...
2020-04-25 11:18:00 154
原创 PTA甲级考试真题练习131——1131 Subway Map
题目代码有错误,暂搁浅#include <iostream>#include <vector>#include <algorithm>using namespace std;const int nmax = 10000;const int inf = 2147483647;vector<int> graph[nmax];int ...
2020-04-25 11:05:33 148
原创 PTA甲级考试真题练习130——1130 Infix Expression
题目思路中序遍历代码#include <iostream>#include <vector>using namespace std;struct info { string val; int lchild, rchild;};vector<info> vec;vector<int> mark;int root;void ...
2020-04-23 22:13:42 135
原创 PTA甲级考试真题练习129——1129 Recommendation System
题目思路水题# 代码#include <iostream>#include <set>using namespace std;const int nmax = 50010;struct info { int cnt, val; bool operator < (const info& a) const{ return cnt != a...
2020-04-23 20:24:41 195
原创 PTA甲级考试真题练习128——1128 N Queens Puzzle
题目思路水题代码#include <iostream>#include <vector>using namespace std;vector<int> vec;bool Judge(int _index) { for (int i = 0; i < _index; ++i) { if (vec[i] == vec[_index] |...
2020-04-23 19:03:03 134
原创 PTA甲级考试真题练习127——1127 ZigZagging on a Tree
题目思路先利用后序和中序序列构造二叉树然后利用BFS遍历二叉树,其中记录深度,深度为偶数的时候正序输出,否则逆序输出代码#include <iostream>#include <vector>using namespace std;vector<int> in, post;typedef struct node { int val; no...
2020-04-22 23:03:38 178
原创 PTA甲级考试真题练习126——1126 Eulerian Path
题目思路输入的时候记录度分类输出即可,注意测试点3是非连通图,需要DFS判断是不是连通图代码#include <iostream>using namespace std;const int nmax = 505;const int inf = 2147483647;int n, m;int graph[nmax][nmax];int degree[nmax] =...
2020-04-22 20:00:41 171
原创 PTA甲级考试真题练习125——1125 Chain the Ropes
题目思路水题代码#include <iostream>#include <vector>using namespace std;vector<int> vec;int main(){ int n; cin >> n; vec.resize(n); for (int i = 0; i < n; ++i) cin >...
2020-04-21 22:36:07 149
原创 PTA甲级考试真题练习124——1124 Raffle for Weibo Followers
题目思路水题代码#include <iostream>#include <vector>#include <unordered_set>using namespace std;unordered_set<string> ss;vector<string> winner;int main(){ int m, n, ...
2020-04-21 21:09:00 162
原创 PTA甲级考试真题练习123——1123 Is It a Complete AVL Tree
题目思路手撕红黑树+BFS+DFS代码#include <iostream>using namespace std;bool flag = true;int n;typedef struct node { int val; struct node* lchild, * rchild;}*tree;void rotateLeft(tree& root) ...
2020-04-21 20:01:30 145
原创 PTA甲级考试真题练习122——1122 Hamiltonian Cycle
题目思路满足四个条件:n不等于N+1;相邻两个结点不相连;头尾两个结点不一样;环没有覆盖所有结点。才是符合要求的序列思路#include <iostream>#include <vector>using namespace std;const int nmax = 250;int n, m ,qn;int num;vector<ve...
2020-04-20 23:08:49 287
原创 PTA甲级考试真题练习121——1121 Damn Single
题目思路使用一个mark数组,存储夫妻ID,一个索引的对应他的配偶的ID,然后利用set集合进行查询,如果当前节点配偶在集合中,则将配偶出集合,如果本身就是单身,直接加入集合坑点注意ID可能为0的情况,所有初始化不能用0,可以选择如-1等!!!代码#include <iostream>#include <set>using namespace std;c...
2020-04-20 20:20:01 162
原创 PTA甲级考试真题练习120——1120 Friend Numbers
题目思路遇见的第二个弱智题代码#include <iostream>#include <set>using namespace std;set<int> s;int main(){ int n; cin >> n; for (int i = 0; i < n; ++i) { string tmp; cin >&...
2020-04-20 12:25:53 120
原创 PTA甲级考试真题练习119——1119 Pre- and Post-order Traversals
题目思路先序遍历是根左右,后序遍历时左右根可以注意到如果二叉树某一个结点只有左节点或者只有右结点的时候先序遍历和后序遍历是一样的。所以在遍历过程中如果发现存在只有左节点或右节点可以判定不止一个中序序列,且我们假定是左节点那么怎么遍历呢,又注意到,先序遍历开头和后序遍历结尾的结点是一样的,即树的根,那么先序序列的第二个结点是根的一个子节点,我们去后序序列中找到他,发现他会将后序序列分成两...
2020-04-20 10:19:23 205
原创 PTA甲级考试真题练习116——1116 Come on! Let's C
题目思路使用map<int,pair<int,bool>>进行hash,分别对应ID,排名,是否访问,查询即可代码#include <iostream>#include <unordered_map>#include <algorithm>using namespace std;unordered_map<int,...
2020-04-19 19:52:48 120
原创 PTA甲级考试真题练习117——1117 Eddington Number
题目思路水题代码#include <iostream>#include <vector>#include <algorithm>using namespace std;vector<int> vec;int main(){ int n; cin >> n; vec.resize(n); for (int i ...
2020-04-19 19:22:26 126
原创 PTA甲级考试真题练习118——1118 Birds in Forest
题目思路使用map<int,pair<int,bool>>对排名进行hash,分别对应ID,排名,是否访问,然后查询即可代码#include <iostream>#include <unordered_map>#include<math.h>using namespace std;unordered_map<int...
2020-04-19 19:08:06 139
原创 PTA甲级考试真题练习115——1115 Counting Nodes in a BST
题目思路建树,在建树的过程中记录每次插入结点的depth,存储map容器中,最终输出map容器的最后两个元素的值即可代码#include <iostream>#include <map>using namespace std;const int nmax = 1005;const int inf = 2147483647;typedef struct n...
2020-04-19 18:27:35 118
原创 PTA甲级考试真题练习114——1114 Family Property
题目思路并查集在并查集的过程中进行set和area的累加,最终每一个根上就是总的家庭成员set和area,然后遍历father数组 ,如果发现跟则加入汇总数组,最后排序输出代码#include <iostream>#include <vector>#include <algorithm>using namespace std;const i...
2020-04-19 11:26:58 189
原创 PTA甲级考试真题练习113——1113 Integer Set Partition
题目思路。。弱智题代码#include <iostream>#include <vector>using namespace std;vector<int> vec;int main(){ int n; cin >> n; vec.resize(n); for (int i = 0; i < n; ++i) cin&...
2020-04-18 19:58:07 122 1
原创 PTA甲级考试真题练习112——1112 Stucked Keyboard
题目思路字符串处理使用list存储遇到重复次数达到给定k值的倍数的字符,然后其他情况下如果发现当前字符在list中,就在list中删去该字符,这样最终list就是结果然后遍历输出代码#include <iostream>#include <string>#include <string.h>#include <list>usin...
2020-04-18 19:46:19 164
原创 PTA甲级考试真题练习111——1111 Online Map
题目思路使用Dijkstra即可,使用DFS最后一个测试点会超时代码#include <iostream>#include <vector>#include<algorithm>using namespace std;const int nmax = 505;const int inf = 2147483647;int l[nmax][nm...
2020-04-18 13:18:39 228
原创 PTA甲级考试真题练习110——1110 Complete Binary Tree
题目思路使用万能的DFS,模拟完全二叉树记录index,如果是完全二叉树的话,index不会超过结点数,否则就不是完全二叉树# 代码#include <iostream>#include <vector>using namespace std;const int nmax = 30;vector<pair<int,int>> vec;...
2020-04-16 10:05:25 189
原创 PTA甲级考试真题练习109——1109 Group Photo
题目思路原序列按身高从大到小,名字从小到大排序后,分段进行新队列的赋值这个鬼题的四舍五入我是没看懂代码#include <iostream>#include <vector>#include<algorithm>using namespace std;const int nmax = 1005;struct info { string ...
2020-04-15 22:00:52 178
原创 PTA甲级考试真题练习108——1108 Finding Average
题目思路利用sscanf和sprintf,因为sscanf可以过滤掉非数字的字符串,如果是数字的话再转成另一个字符串的2位精度,如果和A的部分相等则符合要求代码#include <iostream>#include<string.h>using namespace std;const int nmax = 1005;char a[50], b[50];d...
2020-04-15 20:20:18 138
原创 PTA甲级考试真题练习107——1107 Social Clusters
题目思路典型并查集,集合数组初始化为-1,其中每个根结点的值的相反数代表该节点代表的集合的大小,所以并查集后,对其进行排序后输出<0的数的相反数即可使用并查集注意:从下标1开始,初始化为-1代码#include <iostream>#include <vector>#include<algorithm>using namespace st...
2020-04-15 19:19:52 187
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人