PAT
江南路漫
这个作者很懒,什么都没留下…
展开
-
PAT Family Property DFS+哈希
题目链接 思路: 本题将每个人作为一个单独的结点,若两个人之间是家人关系,则建立边关系。通过哈希法建立人名与编号,编号与人名之间的映射。最后统计每个家庭的人数时,用DFS遍历即可。 对于本题我犯过两个错误,仅供读者参考: 1.建立边关系的时候,应当建立双向边,而不是单向边。 2.出现的人数比较大,数组开大一点。 参考代码: #include<bits/stdc++.h> #include<unordered_map> using namespace std; #define INF原创 2022-04-27 09:14:42 · 213 阅读 · 0 评论 -
Is It a Complete AVL Tree AVL树
思路: 考察的点是建立AVL树以及如何判断是否为满二叉树。 建立AVL树需要搞清楚LL、LR、RR、RL四种情况如何左旋和右旋,如下: 类型 BF条件 操作 LL BF(root)=2,BF(root->lchild)=1 root右旋 LR BF(root)=2,BF(root->lchild)=-1 先root->lchild左旋,再root右旋 RR BF(root)=-2,BF(root->rchild)=-1 root左旋 RL BF(roo..原创 2022-04-22 20:28:10 · 342 阅读 · 0 评论 -
PAT-A Maximum Subsequence Sum
是道常规的动态规划题,不过我有被卡住(丢脸 需要考虑当序列整体求和为0的情况。 #include<bits/stdc++.h> using namespace std; int main() { int k; vector<int> v; scanf("%d", &k); int temp; bool all_negative = true; for(int i = 0; i < k; i++) {原创 2021-09-29 18:02:32 · 83 阅读 · 0 评论 -
PAT-A Sign In and Sign Out
这题挺水的,就是要注意char数组长度至少设置为16,设成15由于存在结尾结束符,会导致长度为15的ID无法存入数组中。 #include<bits/stdc++.h> using namespace std; int main() { int n; scanf("%d", &n); char be[16], ed[16]; int b = 0x3f3f3f3f, e = -1; char name[16]; int hh, mm, ss原创 2021-09-27 01:04:06 · 84 阅读 · 0 评论 -
PAT-A Count PAT‘s
Problem: The string APPAPT contains two PAT’s as substrings. The first one is formed by the 2nd, the 4th, and the 6th characters, and the second one is formed by the 3rd, the 4th, and the 6th characters. Now given any string, you are supposed to tell the n原创 2021-04-17 20:56:19 · 70 阅读 · 0 评论