自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

%%%

%%%

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

原创 UVA 1615 Highway (贪心, 区间选点)

思路:求出每个圆与x轴上交点,即可转化为区间选点模型。实现:按r排序,每次选取最右端放点。#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #

2017-12-30 19:25:28 286

原创 UVA 1614 Hell on the Markets (思维 + 构造)

思路:关键在于1 结论:[1, sum(i)] 可以由 [a1, ai]组成。证明 : 数学归纳法,n = 1显然成立,假设n = i成立对n = i + 1时,需要凑出[sum(i) + 1, sum(i) + a(i +1)]由于sum(i) >= i,  1 实现:排序后从大往小取,由结论sum/2可得,进而sum/2 - ai, 可由[a1, ai-1]得到,可知最

2017-12-30 18:23:12 171

原创 UVA 1153 Keep the Customer Satisfied(贪心+优先队列)

思路:题目等价于已知n个任务的长度与右端点,求最多任务数。非常明显的贪心,按q选取?按d选取?都不能得到正确的解。贪心策略:1. 按照截止时间d排序,优先考虑更早截止的。2. 符合条件的便直接加入选择的队列中。3.不符合条件时,尝试与选择队列中时间最长交换,这样只会产生更优的解。#include #include #include #include #include

2017-12-30 14:10:41 170

原创 习题8-8 猜名次(Guess, ACM/ICPC Beijing 2006, UVa1612)

思路:贪心法,注意精度的控制,可以采取*100再四舍五入的方式转化为int求解value   round   floor   ceil    trunc-----   -----   -----   ----    -----2.3     2.0     2.0     3.0     2.03.8     4.0     3.0     4.0     3.05.5 

2017-12-30 09:30:51 342

原创 习题8-7 生成排列(Generating Permutations, UVa11925)

思路:冒泡排序的思想。题目要求从123 -> 到213,可以转换一下 从无序到有序可以用冒泡解决123 -> 213, 213变为123则123->213,同理123 -> 231等价于312 -> 123。注意处理多余的2操作即可。#include #include #include #include #include #include #include #incl

2017-12-29 17:30:55 265

原创 习题8-6 起重机(Crane, ACM/ICPC CERC 2013, UVa1611)

思路:选择排序的思想,每个数最多经过两次翻转到达正确位置。有点疑问:复杂度不是n方么。。。怎么能过。。。#include #include #include #include #include #include #include #include #include #include #include #include #include #include #inc

2017-12-29 11:39:04 306

原创 习题8-5 折纸痕(Paper Folding, UVa177)

思路:典型的递归分形问题。第一步要找规律,开始时,我从旋转的角度思考,无法求解。之后发现以方向标画图: r -> ru -> rulu...发现每次增加的部分为原有部分逆序逆时针转90°。#include #include #include #include #include #include #include #include #include #include #i

2017-12-27 19:04:56 478

原创 习题8-4 奖品的价值(Erasing and Winning, UVa11491)

思路:贪心,由于数的特性,显然贪心可得正解,每次选取可选的最大值。#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #incl

2017-12-23 15:52:52 231

原创 习题8-3 比特变换器(Bits Equalizer, SWERC 2012, UVa12545)

思路:我还蛮怕这种题的。。。。首先计算1的个数,若s多余t显然无解,之后先假设所有的问号变为t中对应字符。再次计算st中1的个数,若不等说明问号处有问题,则问号处部分不变为1。dif为不同数,dif += abs(s1 - t1)为总的不同处,ans = ? + dif/2。#include #include #include #include #include #inc

2017-12-23 15:38:13 247

原创 习题8-2 聚会游戏(Party Games, Mid-Atlantic 2012, UVa1610)

思路:构造题,挫败感max。orz。。。。容易想到ans为sort后中间两个字符串a,b之间的串。由于要求长度以及字典序最小,可以按照这两个来枚举构造。若某长度无解,则ans加上a串的当前字符。#include #include #include #include #include #include #include #include #include #incl

2017-12-22 22:12:44 259

原创 例题9-5 劲歌金曲(Jin Ge Jin Qu [h]ao, Rujia Liu's Present 6, UVa 12563)

思路:距离暑假第一次见到dp问题已经过去4个月了。现在以为dp问题利用了从相同状态出发能得到相同结果的性质。以空间换时间,记录下结果的搜索,对于递推顺序显然的题,可以直接采用填表法。此题一个更好的做法是只记录下最大长度之后逆着枚举t,找出最长时间。dp数组可采取滚动数组的形式。#include #include #include #include #include #

2017-12-22 14:47:48 293

原创 Codeforces Round #451 (Div. 2)

C. Phone Numbers (模拟+STL)思路:一种节省空间的做法是map + set s[maxn]筛选时,对每一个只需判断是否为后缀即可,判后缀可用string.substr()再进行比较.#include #include #include #include #include #include #include #include #include #in

2017-12-17 17:08:43 161

原创 例题9-4 单向TSP(Unidirectional TSP, UVa 116)

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define SF(a) scanf(

2017-12-16 11:54:26 228

原创 Codeforces 598E Chocolate Bar

思路:1. 首先注意到数据组数为1e4,每次算出的结果保留,待下次查询。2. 定义状态dp[i][j][k]为边长i,j的矩形要得到k块所需的最小花费。3. 注意状态转移,每次行列切割后,不是直接转移的到dp[i][j - a][k - a*i]之类。应当进行枚举,把目标k分散至分割后的部分。#include #include #include #include #includ

2017-12-14 14:35:39 258

原创 例题9-3 旅行(Tour, ACM/ICPC SEERC 2005, UVa1347)

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define SF(a) scanf(

2017-12-14 13:02:27 332

原创 例题9-2 巴比伦塔(The Tower of Babylon, UVa 437)

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define SF(a) scanf(

2017-12-12 09:25:29 238

原创 例题9-1 城市里的间谍(A Spy in the Metro, ACM/ICPC World Finals 2003, UVa1025)

思路:1.  定义状态dp[pos][time], 表示从此状态到终点需要的等待时间。2. 预处理出每个状态是否有向左或向右的火车。3. 记忆化搜索的优点在于思路清晰,无需考虑递推顺序,注意仅dp[n][T] = 0。4. 采用填表法进行递推,dp[i][j] = min(dp[i][j+1]+1, dp[i+1][j+ti], dp[i-1][j+t(i-1)])。#includ

2017-12-11 10:36:05 280

原创 习题8-1 装箱(Bin Packing, SWERC 2005, UVa1149)

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define SF(a) scanf(

2017-12-09 09:14:21 240

原创 例题8-18 洞穴(Cave, ACM/ICPC CERC 2009, UVa1442)

思路:若某点水位为h,那么从此h向左右延伸都小于等于ceil,不触碰ceil。一次扫描维护两边复杂度为O(n^2),显然不可行。所以扫描两次,第一次扫描使得每点h为左延伸不碰壁的最大高度。注意当此时水位h h1与h2皆为满足单条件的最大值,min(h1, h2)即为所求点水位高度最大值。#include #include #include #include #inclu

2017-12-08 10:23:18 277

原创 例题8-17 不公平竞赛(Foul Play, ACM/ICPC NWERC 2012, UVa1609)

思路:n = 2时,只要满足条件,目标队伍便能获胜。采取递归分治的解法,每一步构造出满足条件的状态。对每一步的构造方法:首先选取黑色队与灰色队配对;再配对目标队;优先黑色队配对;剩下任意配对。数据读入可以用char存储,%s输入。#include #include #include #include #include #include #include #

2017-12-07 20:47:10 281

原创 例题8-16 不无聊的序列(Non-boring sequences, CERC 2012, UVa1608)

思路:若序列中存在某个只出现一次的元素,横跨此元素左右的序列必然ok,只需考虑左右序列。由此T(n) = T(k-1) + T(n - k) + T(find唯一元素)。预处理出每个元素左右相同元素的位置,则可以以T(find) = O(n)。优化查找方式,每次从序列的左右两端同时查找,最坏情况T(n) = O(nlogn)。orz.真的好困难,步履维艰。。。两种不同的查找

2017-12-06 22:02:08 360

原创 例题8-15 Shuffle的播放记录(Shuffle, ACM/ICPC NWERC 2008, UVa 12174)

思路:枚举前s个数作为开头的情况。首先,可以运用滑动窗口法来预处理出所有点起始长为s的排列是否存在,复杂度为O(n)。接着,check的过程复杂度为s*n/s, 同样为O(n)。#include #include #include #include #include #include #include #include #include #include #inclu

2017-12-06 09:44:00 220

原创 例题8-14 与非门电路(Gates, ACM/ICPC CERC 2001, UVa1607)

虽然能够明白从0……000到1……111中必然会有一个交接点。但是他们之间并没有单调的关系吧?何以二分答案?#include #include #include #include #include #include #include #include #include #include #include #include #include #include #inc

2017-12-03 20:13:02 485

空空如也

空空如也

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

TA关注的人

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