PAT
Eureka_Yi
努力学习ing.
展开
-
[搜索]PAT1004 Counting Leaves
题意:给出一棵树的非叶子结点和它的子节点,然后求这棵树每层的叶子节点数。思路:我的想法是先从根节点搜索并依次算出每个节点所在层数再算每层的叶子节点数目。原创 2014-02-22 10:39:59 · 1437 阅读 · 0 评论 -
[折半查找]PAT1048 Find Coins
题意:在一堆数据中找出两个数使得这两个数相加等于给出的数,如果有多种选择输出那个含有最小值的组合。思路:因为数据量较大,所以暴力搜索超时是肯定的,因此选用折半查找。先排序枚举第一个数字,再查找第二个数字。原创 2014-03-01 09:32:36 · 975 阅读 · 0 评论 -
[哈希]PAT1039 Course List for Student
题意:关于学生选课的问题,给出了每门课的序号和选课的学生名字,然后查询学生的选课情况。思路:这道题数据量较大卡时也比较严格。用string和cin,cout会超时。还有一点就是将学生的姓名映射到一个整数,这样存取就方便了很多。原创 2014-02-27 20:27:33 · 2408 阅读 · 0 评论 -
[哈希]PAT1042 Shuffling Machine
题意:模拟一个洗牌机,大致的功能是如果位置i的数字是j,那么就把位置i的牌移动到位置j去,求n次洗牌后牌堆的位置。思路:基本就是哈希了,没什么技巧性。原创 2014-02-26 22:00:43 · 907 阅读 · 0 评论 -
[字符串]PAT1040 Longest Symmetric String
题意:找出字符串中的最长的回文子串的长度。最基础的字符串处理题目,没有什么难度。原创 2014-02-27 14:50:11 · 1589 阅读 · 2 评论 -
[哈希]PAT1041 Be Unique
题意:找出数列中第一个在数列中只出现一次的数。思路:很简答的哈希水题,直接哈希就可以了。原创 2014-02-26 14:57:15 · 901 阅读 · 0 评论 -
[排序]PAT1038 Recover the Smallest Number
题意:给出多个最长8位的数字,求他们组成的最小数字。思路:这个想法比较简单了,假设两个数字字符串是str1,str2,直接排序排序规则是 str1+str2<str2+str1,可以得到最小的组合数字,注意要去掉前导0,如果全是0则只留下一个0。原创 2014-02-26 10:31:46 · 1078 阅读 · 0 评论 -
[贪心]UVA1037 Magic Coupon
题意:一个商店提供优惠券,使用此优惠券能使得商店返回此优惠券的倍数*商品的价格。注意这两个数字都可以是负数。求最大能返回的商品价值。思路:典型的一道贪心的题目,把优惠券的倍数和商品的价格分别区分为正数和负数,再排序用正数乘正数,负数乘负数可得出结果。原创 2014-02-26 09:35:13 · 1064 阅读 · 0 评论 -
[排序]PAT1025 PAT Ranking
题意:一道比较水的排序题,合并几组数据并排序,求出总的排名和在各组的排名。思路:没有什么技巧,直接排序模拟。原创 2014-02-23 18:14:42 · 894 阅读 · 0 评论 -
[字符串处理]PAT1023 Have Fun with Numbers
题意:求解一个长度为0~20之间的某个数乘2之后还是不是由原来的数字组成。原创 2014-02-23 19:17:03 · 1226 阅读 · 0 评论 -
[哈希]PAT1032 Sharing
题意:给出了存储两个字符串的字符的存储内存区的首尾地址,求两个字符串的公共存储区的首地址。思路:这道题据说是12年研究生考试时数据结构的大题。我是使用哈希来做的。原创 2014-02-24 19:39:17 · 1079 阅读 · 0 评论 -
[并查集&&BFS]PAT1021 Deepest Root
题意:给出一个无环图,求某个节点使得以它为根节点组成一棵树使得这棵树的深度达到最大。思路:因为节点数大于10000而边数小于节点数是一个稀疏图,使用邻接矩阵存储的话内存会超限(我已经试过了),所以选用邻接表存储,邻接表的话使用vector比较合适。我使用bfs来搜索最深的节点。原创 2014-02-23 18:09:54 · 1573 阅读 · 2 评论 -
[并查集压缩路径]PAT1013 Battle Over Cities
题意:给出n个城市之间的路径,假如其中有一座城市被包围了,需要另外修多少条路使得另外的城市是连通的。思路:典型的并查集题目,但是要注意一点,使用朴素的并查集会超时,所以需要压缩路径。原创 2014-02-22 16:10:45 · 1422 阅读 · 0 评论 -
[map]PAT1009 Product of Polynomials
题意:给出了两个多项式的系数和幂次数,求这两个多项式相乘后的系数和幂次数。思路:直接模拟相乘就可以了,但是要注意一点就是,幂次数相同的需要合并,系数为0需要去掉。因此我选择用map原创 2014-02-22 16:06:58 · 1097 阅读 · 0 评论 -
[递归&&bfs]PAT1020 Tree Traversals
题意:根据题中所给出的后序遍历和中序遍历序列求树的层次遍历。思路:先建立二叉树,再使用bfs就可以求解。原创 2014-02-23 10:28:11 · 1374 阅读 · 0 评论 -
[哈希]PAT1050 String Subtraction
题意:给出两个字符串,要求在第一个字符串中把第二个字符串中出现所有的字符去掉。思路:因为卡时比较严格,字符串又比较长,所以要想尽一切方法减少运算,暴力处理肯定超时,所以选用哈希比较好。我使用哈希之后发现还是超时,各种找bug,结果发现在循环处理字符的时候没有把字符串长度保存下来,而是在循环里一直使用strlen函数,导致运算量较大。。血的教训啊!!原创 2014-03-01 09:24:19 · 1028 阅读 · 0 评论