自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

九问的烦恼

记录自己的心路历程与技术成长之路。

  • 博客(31)
  • 收藏
  • 关注

原创 [哈希]PAT1039 Course List for Student

题意:关于学生选课的问题,给出了每门课的序号和选课的学生名字,然后查询学生的选课情况。思路:这道题数据量较大卡时也比较严格。用string和cin,cout会超时。还有一点就是将学生的姓名映射到一个整数,这样存取就方便了很多。

2014-02-27 20:27:33 2214

原创 [字符串]PAT1040 Longest Symmetric String

题意:找出字符串中的最长的回文子串的长度。最基础的字符串处理题目,没有什么难度。

2014-02-27 14:50:11 1577 2

原创 [哈希]PAT1042 Shuffling Machine

题意:模拟一个洗牌机,大致的功能是如果位置i的数字是j,那么就把位置i的牌移动到位置j去,求n次洗牌后牌堆的位置。思路:基本就是哈希了,没什么技巧性。

2014-02-26 22:00:43 901

原创 [哈希]PAT1041 Be Unique

题意:找出数列中第一个在数列中只出现一次的数。思路:很简答的哈希水题,直接哈希就可以了。

2014-02-26 14:57:15 880

原创 [排序]PAT1038 Recover the Smallest Number

题意:给出多个最长8位的数字,求他们组成的最小数字。思路:这个想法比较简单了,假设两个数字字符串是str1,str2,直接排序排序规则是 str1+str2<str2+str1,可以得到最小的组合数字,注意要去掉前导0,如果全是0则只留下一个0。

2014-02-26 10:31:46 1072

原创 [贪心]UVA1037 Magic Coupon

题意:一个商店提供优惠券,使用此优惠券能使得商店返回此优惠券的倍数*商品的价格。注意这两个数字都可以是负数。求最大能返回的商品价值。思路:典型的一道贪心的题目,把优惠券的倍数和商品的价格分别区分为正数和负数,再排序用正数乘正数,负数乘负数可得出结果。

2014-02-26 09:35:13 1060

原创 [哈希]PAT1032 Sharing

题意:给出了存储两个字符串的字符的存储内存区的首尾地址,求两个字符串的公共存储区的首地址。思路:这道题据说是12年研究生考试时数据结构的大题。我是使用哈希来做的。

2014-02-24 19:39:17 1073

原创 [字符串处理]PAT1023 Have Fun with Numbers

题意:求解一个长度为0~20之间的某个数乘2之后还是不是由原来的数字组成。

2014-02-23 19:17:03 1222

原创 [排序]PAT1025 PAT Ranking

题意:一道比较水的排序题,合并几组数据并排序,求出总的排名和在各组的排名。思路:没有什么技巧,直接排序模拟。

2014-02-23 18:14:42 890

原创 [并查集&&BFS]PAT1021 Deepest Root

题意:给出一个无环图,求某个节点使得以它为根节点组成一棵树使得这棵树的深度达到最大。思路:因为节点数大于10000而边数小于节点数是一个稀疏图,使用邻接矩阵存储的话内存会超限(我已经试过了),所以选用邻接表存储,邻接表的话使用vector比较合适。我使用bfs来搜索最深的节点。

2014-02-23 18:09:54 1564 2

原创 [递归&&bfs]PAT1020 Tree Traversals

题意:根据题中所给出的后序遍历和中序遍历序列求树的层次遍历。思路:先建立二叉树,再使用bfs就可以求解。

2014-02-23 10:28:11 1368

原创 [并查集压缩路径]PAT1013 Battle Over Cities

题意:给出n个城市之间的路径,假如其中有一座城市被包围了,需要另外修多少条路使得另外的城市是连通的。思路:典型的并查集题目,但是要注意一点,使用朴素的并查集会超时,所以需要压缩路径。

2014-02-22 16:10:45 1418

原创 [map]PAT1009 Product of Polynomials

题意:给出了两个多项式的系数和幂次数,求这两个多项式相乘后的系数和幂次数。思路:直接模拟相乘就可以了,但是要注意一点就是,幂次数相同的需要合并,系数为0需要去掉。因此我选择用map

2014-02-22 16:06:58 1090

原创 并查集路径压缩

之前在博客上写过一篇并查集的文章,当时并没有用到路径压缩,效率较低,今天做到一道题发现使用朴素的并查集方案超时了,之后改用路径压缩通过了;因此在这里再讨论下使用路径压缩的并查集。

2014-02-22 14:57:59 1245

原创 [搜索]PAT1004 Counting Leaves

题意:给出一棵树的非叶子结点和它的子节点,然后求这棵树每层的叶子节点数。思路:我的想法是先从根节点搜索并依次算出每个节点所在层数再算每层的叶子节点数目。

2014-02-22 10:39:59 1430

原创 [中位数]A mid-summer night's dream.uva10057

关于中位数的题目题意:我们的科学领导人遇到一个很大的问题,他忘掉了他的密码锁的号码,基于安全性考量,目前的电脑无法解决密码锁的问题。在一个仲夏夜里,科学家做了一个梦,梦里他看到许多数字飞来飞去。他把这些数字纪录在电脑上。接着他想到有一个线索,假如数字列为(X 1 , X 2 , … , X n)他必须找到一个整数A(A就是他密码锁的密码)使得( |X 1-A| + |X 2 -A| + … … + |X n -A|)为最小。思路:很容易就能看出来这个数就是这个数组的中位数。只需区分偶数和奇数的情况就可以

2014-02-21 11:14:51 1455

原创 [排序&&模拟]Lining Up uva270

题意:「我要如何解决这个问题呢?」飞行员说。这个飞行员正面临一项不容易的任务,他必须在一个危险区域中的某些定点投掷包裹。因为他只能穿越此区域一次,而且是飞直线,所以他必须尽可能的通过那些定点,以便投掷多一点包裹。所有的定点均以平面座标来表示。从这些定点的座标资料,飞行员想要知道最多有多少个点是在同一直线上的。解法:自己一开始写了个暴力枚举的,结果超时了,后来参考了下某位同学的代码,他的思路是先求出两条直线的斜率,然后排序,斜率相等的并经过同一点的就在一条直线上。这道题水题磨了很久,后来还因为浮点数的

2014-02-21 09:44:30 1158

原创 [贪心]Shoemaker's Problem uva10026

一道贪心题目。题意:鞋匠有N件工作要完成。他每天只能做一件工作。并且他知道这些工作分别要几个工作天才能完成。另外,他也知道每个工作被延误一天所需被罚的罚金。延误的天数为从今天算起到该工作开始的那天(所以只有第一件工作没有罚金)。以第一组测试资料为例说明:若工作的顺序是1 2 3 4,那罚金为:0*4+1000*3+4*2+6*5=3038。若工作的顺序是2 1 3 4,则罚金为:0*1000+1*4+4*2+6*5=42。所以第二种工作顺序的罚金较少(事实上也是最少)。你的任务是写一个程式帮助鞋匠找

2014-02-20 20:33:52 1205

原创 [模拟]All in All uva10340

一道字符串处理的题目。题意:给你2个字串s,t,请你写一个程式判断是否s是t的子字串。很水的一道题么了,直接模拟就行了。

2014-02-20 19:42:00 1085

原创 [二分&&高精度]Solve It uva10341

题意:求一个数x(0<=x<=1)使得函数 p*e-x + q*sin(x) + r*cos(x) + s*tan(x) + t*x2 + u = 0由于函数时单调的,所以可以使用二分查找。

2014-02-20 17:00:41 1012

原创 [排序]Foreign Exchange uva10763

一到简单的排序题。题意:有一个非营利性的国际性机构执行一项国际交换学生计画。这几年来执行得相当好,有越来越多的学生想要参与这项计画,所以现在请你来帮忙这个机构。每个提出交换学生申请的人有2项资料:他来自哪一国,他想要交换到哪一国。这个计画只有在每个学生都可以找到一个交换对象的时候才算成功。换句话说,假如有一个学生想要从A国到B国,那么一定要有另一个学生从B国到A国。如果只有50个学生提出申请,要判断这计画是否可行相当简单,然而现在最多已经有 500000个学生了。思路:这道题目的思路是求每个学生是否存

2014-02-19 15:45:51 1195

原创 [排序]Children's Game uva10905

一道字符串排序题。题意:现在,有许多给小孩子玩的数字游戏,这些游戏玩起来简单,但要创造一个就不是那么容易的了。在这,我们将介绍一种有趣的游戏。你将会得到N个正整数,你可以将一个整数接在另一个整数之后以制造一个更大的整数。例如,这有4个数字123, 124, 56, 90,他们可以制造下列整数─ 1231245690, 1241235690, 5612312490, 9012312456, 9056124123....等,总共可以组合出24(4!)种数字。但是,9056124123是最大的那一个。你可能会

2014-02-19 12:09:31 1895

原创 [回溯]Super Number uva10624

一道回溯题目题意:给定两个数字n,m;求一个长度为m的数字使得这个数字的任意前i(n=<i<=m)个数字组成的数能被i整数。这道题按照我的思路就是回溯暴力。暂时没想到更好的方法了。

2014-02-18 17:08:24 1039

原创 [回溯]KTV uva11218

一道非常简单的回溯搜索题目。题意:最近有一首三人合唱的歌很流行,你与朋友共九个人一同到KTV欢唱,你们决定一人只能唱一次,也就是将九个人分成三组,一组三人,每人刚好都被分派到一个组别。但是有些人并不喜欢与另一些人搭档,而有些组合的效果并不好听,所以我们对所有可能的三人组合打分数,请找出9人最高的分组分数总和。

2014-02-12 09:14:53 1609

原创 [哈希]Sumsets uva10125

题意:在给出的一组数组里面找出最大的数d使得数组里面另外三个数a,b,c使得a+b+c=d。解法:使用暴力的话,时间复杂度o(n4),最后一个二分的话是o(n3lgn),数量级非常大。但是据说直接使用暴力也能过。可以把公式变为a+b=d-c,然后把a+b的结果存下来,然后验证是否存在d-c等于a+b,使用哈希来判断。

2014-02-08 19:11:21 1216

原创 [哈希]Concatenation of Languages uva10887

一道简单的哈希题目:题意:将A集合的词与B集合中的词按要求合成一个词,然后利用哈希表判重。

2014-02-08 19:00:37 1187

原创 [哈希]The Spot Game uva141

题意:放石头游戏(The game of Spot)在一块NxN的板子上进行,如下图为N=4的板子。游戏的玩法是两个玩家轮流放一块石头在空的格子上,或是可以从板子上拿一块石头起来,游戏的进行中可以发现,板子上石头的布局会不断变化,当一玩家排出已重复出现过的布局时,他就算输了这一局(一种布局如果将之旋转90度、180度、270度亦视为相同的布局)。若在2N步内未出现过相同的布局就算和局。一开始就看错了题目,以为棋盘是4*4的,没看到n*n,wa了无数次,其中哈希函数也写错了。。一道简单的哈希题花了很久的时间

2014-02-07 21:23:46 1271

原创 [哈希&&模拟]Happy Number uva10591

一道直接可以模拟的哈希的水题,注意happy number的最大值不超过9*81。开的哈希数组1000就够用。

2014-02-07 09:48:49 1560

原创 [二分查找]Compound Words uva10391

一道二分查找的题目题意:给出一系列单词,找出由其中两个单词复合组成的单词。直接排序然后二分查找了。

2014-02-06 15:25:20 1423

原创 [模拟]Perfect Hash UVA188

Perfect Hash Perfect Software, Inc. has obtained a government contract to examine text flowing through a high-speed network for the occurrence of certain words. Your boss, Wally Perfect, h

2014-02-06 09:56:14 1190

原创 [二分查找]Babelfish uva 10282

这道题题意非常简单,给出一个字典,找出对应单词的翻译。这种类型直接用map非常简单,可是我非常手贱的写了一个二分查找,其中还出现一些小错误。

2014-02-05 16:38:06 1341

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除