![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HDOJ
文章平均质量分 79
代金桥
交流邮箱daijinqiao(at)163.com
展开
-
hdoj 2847 Binary String
类型:枚举题目:http://acm.hdu.edu.cn/showproblem.php?pid=2847来源:2009 Multi-University Training Contest 4 - Host by HDU思路:(1)一定有解。原因是对于原串s之后连接k的二进制串即是k的倍数(2)从(n / k + 1) * k 开始枚举,找到满足条件的解即可退出(3)原创 2012-05-03 21:45:23 · 483 阅读 · 0 评论 -
hdoj 2451 Simple Addition Expression
类型:数学题目:http://acm.hdu.edu.cn/showproblem.php?pid=2451来源:2008 Asia Regional Harbin思路:设整数n的长度为len, 先求出1 ~ len - 1的所有长度的满足条件的数的和【预处理数组】然后计算长度为len的数量,假设最高位数位xx = 1时,没有小于1的数符合条件,再求次高位x = 2时,累加原创 2012-04-09 19:33:04 · 329 阅读 · 0 评论 -
hdoj 4198 Quick out of the Harbour
类型:bfs + 优先队列题目:http://acm.hdu.edu.cn/showproblem.php?pid=4198来源:BAPC 2011思路:扩展完当前节点后,将"路径"小的节点出队,进行扩展。!!!S点可能在边上// hdoj 4198 Quick out of the Harbour// wa ac 125MS 764K#include #include原创 2012-04-10 11:40:24 · 412 阅读 · 0 评论 -
hdoj 4143 A Simple Problem | hdoj 4206 Treasure Map
类型:数学题目:http://acm.hdu.edu.cn/showproblem.php?pid=4206来源:BAPC 2011思路:y^2 - x^2 = n =》 (y - x) * (y + x) = n 。容易知道,y - x 与 y + x均为正整数【4206为非负整数】,且y - x 枚举i = y - x, 那么y + x = n / i,有x = (n / i原创 2012-04-08 20:16:22 · 287 阅读 · 0 评论 -
hdoj 3627 Giant For
类型:线段树题目:http://acm.hdu.edu.cn/showproblem.php?pid=3627来源:2010 Asia Regional Tianjin Site —— Online Contest思路:将读入的数据排序后离散化,以下标为叶子节点建立线段树,叶子节点存储该位置处的列值,非叶子节点存储该区间中叶子的最大列值。然后进行线段树的插入、删除和查找【给定查找区原创 2012-04-08 15:33:30 · 288 阅读 · 0 评论 -
hdoj 2962 Trucking
类型:最短路 + 二分答案题目:http://acm.hdu.edu.cn/showproblem.php?pid=2962来源:2008 Rocky Mountain Regional思路:二分枚举容量限制ans,在该限制下求最短路,如果无路径,说明ans偏大,否则偏小。当ans不足一时,原图无解!!!最后重新计算以免除精度问题,如:ans = 7, 当ans = 7.000原创 2012-04-08 21:36:03 · 326 阅读 · 0 评论 -
hdoj 4151 The Special Number
类型:数学题目:http://acm.hdu.edu.cn/showproblem.php?pid=4151来源:2011百校联动“菜鸟杯”程序设计公开赛思路:先求出从1位到len - 1位的总数,然后逐位求解例如:3235,首先求出长度为1, 2, 3的符合条件的总数,然后计算首位小于3的数据,再计算首位为3时第二位小于2的数据,然后计算前两位为32第三位小于3的数据量。这时原创 2012-04-08 18:22:15 · 314 阅读 · 0 评论 -
hdoj 3622 Bomb Game
类型:2-sat题目:http://acm.hdu.edu.cn/showproblem.php?pid=3622来源:2010 Asia Regional Tianjin Site —— Online Contest思路:二分枚举半径,判断解是否存在// hdoj 3622 Bomb Game// wa wa 1984MS 612K#include #include原创 2012-04-06 13:18:13 · 228 阅读 · 0 评论 -
hdoj 2473 Junk-Mail Filter
类型:并查集题目:http://acm.hdu.edu.cn/showproblem.php?pid=2473来源:2008 Asia Regional Hangzhou思路:因为要保证联通分量的连通性,所以当删除某一节点后,该联通分量仍然需要联通。可以这样想,当删除某一点i时,仍然保留编号为i的点为当前删除点的“旧点”【这样原来属于该联通分量的连通性未变】,构造新点num,表示点原创 2012-04-06 10:30:36 · 321 阅读 · 0 评论 -
hdoj 2452 Navy maneuvers
类型:有向无环图DP题目:http://acm.hdu.edu.cn/showproblem.php?pid=2452来源:2008 Asia Regional Harbin思路:题中给定一个有"根"节点的有向无环图,可以从该点开始自定向下进行记忆化搜索,当搜索到节点v时,求出其两种状态的值。即dp[v][0]表示自节点v开始Victory先走的最优值,dp[v][1]表示自节点v原创 2012-04-09 19:20:54 · 311 阅读 · 0 评论 -
hdoj 3664 Permutation Counting
类型:DP题目:http://acm.hdu.edu.cn/showproblem.php?pid=3664来源:2010 Asia Regional Harbin思路:状态dp(n, k)表示n个数有k个ai > i的排列数。考虑第n个数,设当前排列为a1 a2 ...ai...an -1(1)放在末尾,不影响当前排列的结果 (2) 和某一个ai交换,如果ai i,则结果不原创 2012-04-11 09:29:17 · 323 阅读 · 0 评论 -
hdoj 3746 Cyclic Nacklace
类型:KMP题目:http://acm.hdu.edu.cn/showproblem.php?pid=3746来源:HDU 3rd “Vegetable-Birds Cup” Programming Open Contest思路:(1)字符加在前后等价(2)注意非周期串的特殊情况:ababa// hdoj 3746 Cyclic Nacklace// ac 125MS原创 2012-04-15 08:57:26 · 314 阅读 · 0 评论 -
hdoj 4218 IMBA?
类型:JAVA题目:http://acm.hdu.edu.cn/showproblem.php?pid=4218来源:首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛思路:1.7320508075688.....的平方为3。然后模拟过程打印!!!z /*hdoj 4218 IMBA?*/import java.util.*;import java.math.*;pub原创 2012-04-28 20:09:14 · 465 阅读 · 0 评论 -
hdoj 4235 Vampire Numbers
类型:预处理+二分题目:http://acm.hdu.edu.cn/showproblem.php?pid=4235来源:SER2011思路:对于a * b = v ,注意到a,b的无序性,枚举a, b [其中a的数位小于等于b的数位],判断当前情况下的a,b是否合法,若合法,记录值a * b,对于输入的值x,二分查找即可。!!!对于a * b已经大于最大符合条件的数的情况,即可b原创 2012-04-28 19:20:17 · 408 阅读 · 0 评论 -
hdoj 4223 Dynamic Programming?
类型:枚举题目:http://acm.hdu.edu.cn/showproblem.php?pid=4223来源:首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛思路:n = 1000,直接枚举所有的区间[i, j]的值,比较得最优值//hdoj 4223 Dynamic Programming?#include #include #include #include原创 2012-04-28 19:11:00 · 335 阅读 · 0 评论 -
hdoj 4221 Greedy?
类型:贪心题目:http://acm.hdu.edu.cn/showproblem.php?pid=4221来源:首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛思路:按照Di值排序,Di值小的先安排,大的后安排。可以这样想,假设最优情况下第x个任务的penalty值最大,那么需要第x - 1个任务的值最优[即penalty 值尽量小],以此类推,需要第一个任务的penalty 最原创 2012-04-28 18:58:50 · 387 阅读 · 0 评论 -
hdoj 3038 How Many Answers Are Wrong
类型:并查集题目:http://acm.hdu.edu.cn/showproblem.php?pid=3038来源:2009 Multi-University Training Contest 13 - Host by HIT思路:(1)右端点为根,左端点为叶子(2)sum[a]表示区间[a + 1, a的父亲节点]的序列的和(3)路径压缩的同时更新sum的值(4)原创 2012-04-16 17:38:21 · 418 阅读 · 0 评论 -
hdoj 3033 I love sneakers!
类型:分组背包题目:http://acm.hdu.edu.cn/showproblem.php?pid=3033来源:2009 Multi-University Training Contest 13 - Host by HIT思路:状态dp(i, m)表示用m钱买前i种品牌的产品可以获得的最大价值对于第i种品牌的当前物品j(1)不放j物品,那么结果为原始值dp(i,原创 2012-04-16 19:10:59 · 964 阅读 · 1 评论 -
hdoj 3639 Hawk-and-Chicken
类型:连通性题目: http://acm.hdu.edu.cn/showproblem.php?pid=3639来源:2010 ACM-ICPC Multi-University Training Contest(19)——Host by HDU思路:(1)题目求的是,获得最多支持的人的人,而不是获得最多票的人的人,即每人只能支持其他人一次(2)联通子图的点可相互到达,将其原创 2012-04-15 18:52:19 · 406 阅读 · 0 评论 -
hdoj 3035 War
类型:最小割题目:http://acm.hdu.edu.cn/showproblem.php?pid=3035来源:2009 Multi-University Training Contest 13 - Host by HIT思路:最小割的模型是比较明显的。麻烦些的是构图。!!!点、边的范围// hdoj 3035 War// ac 4625MS 54852K#incl原创 2012-04-15 08:40:15 · 421 阅读 · 0 评论 -
hdoj 3631 Shortest Path
类型:最短路题目:http://acm.hdu.edu.cn/showproblem.php?pid=3631来源:2010 Asia Regional Tianjin Site —— Online Contest思路:n ,使用floyd算法求最短路,这样查询时间为O(1),时间复杂度为300^3【思路一定要开阔!!!】// hdoj 3631 Shortest Path/原创 2012-04-06 13:24:59 · 271 阅读 · 0 评论 -
poj 1386 | hdoj 1116 play on words
类型:欧拉回路题目:http://poj.org/problem?id=1386来源:Central Europe 1999思路:首先考虑的是将单词看做点,可以连接的单词之间连一条边,这样就是求一条路径包含所有的点,该问题为复杂的哈密尔顿问题。然后考虑转化模型,将单词看做边,每个单词的首尾字符看做点,那么每个单词就是一条由首字符点连向尾字符点的边,即转化为就一条路径连接所有的边原创 2012-03-19 09:56:34 · 255 阅读 · 0 评论 -
hdoj 1754 I Hate It
类型:一维线段树来源:2007省赛集训队练习赛(6)_linle专场题目:老师们很喜欢询问,从某某到某某当中,分数最高的是多少。写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。思路:建树时,根节点保存该线段下的最大值,先建立左右子树后计算当前根的节点,取左右子树的大值【DP思想】更新时,对当前节点和新数据比较,新数据大,则更新根的值查询时,找到与该区间相原创 2012-03-05 18:51:19 · 178 阅读 · 0 评论 -
hdoj 3791 二叉搜索树
类型:二叉搜索树来源:浙大计算机研究生复试上机考试-2010年题目:给定一个序列,构造一个二叉搜索树,然后对给定的其他序列和第一个序列相比,判断两个序列是否能组成同一颗二叉搜索树按照第一个序列先构造一棵二叉搜索树,然后对其他序列,同样构造一棵二叉搜索树,如果两棵树相同,则其先序和后序序列相同,可以根据两棵树的先序和后序序列判断结果// hdoj 3791 二叉搜索树//原创 2012-02-27 22:05:57 · 290 阅读 · 0 评论 -
hdoj 3729 I'm Telling the Truth
来源:2010 Asia Tianjin Regional Contest类型:二分图将每个学生看做一个点,每个名次看做一个点,对于每个学生,向其名次段的所有名次连边如,学生1的名次段为1~3,则有边1->1, 1->2, 1->3【左边的点和右边的点不是同一类型的点】题目要求的就是二分图的最大匹配要求输出字典序最大的一组点,倒叙找增广路即可,比如最大的字典序解为x1,x2原创 2012-02-27 16:54:42 · 233 阅读 · 0 评论 -
hdoj 4160 Dolls
类型:二分图如果将每个doll看做一个节点,对于xi 最小路径覆盖和二分图的最大匹配的关系是:最小路径覆盖 = |P|-最大匹配数所以可转化为求二分图的最大匹配问题使用匈牙利算法求解,不断寻找增光路,获得更大的匹配// hdoj 4160 Dolls#include #include #include using namespace std;int n;i原创 2012-02-26 23:07:12 · 339 阅读 · 0 评论 -
hdoj 1018 Big Number
题目:求整数n!的位数 1 类型:数论有这样一个定理:f(n) = log10(n) + 1 f(n)为整数n的位数证明:设n的位数为m,则有10^(m - 1) 得:log10(n) 对log10(n)向下取整,得m = (int)log10(n) + 1,得证所以有:f(n!) = f(1 * 2 * 3 * ... * n) + 1 = f(1) + f原创 2012-02-24 12:36:14 · 232 阅读 · 0 评论 -
hdoj 1143-Tri Tiling
<br />// hdoj 1143-Tri Tiling/* * 递推题 * n为奇数时 a[n]=0,n=2 时有三种方案 * 有a[i]+=3*a[i-2] * 仔细观察图形发现n>2且中间交叉的情况只有两种: * — — * | — | * | — | (n=4) * * | — | * | — | * — — (n=4) * 有a[i]+=2*a[i-j] (j>=4) * ac 284k 0ms */#includ原创 2011-04-26 23:07:00 · 429 阅读 · 0 评论 -
hdoj 2489-Minimal Ratio Tree
// hdoj 2489-Minimal Ratio Tree/* * 组合序列+最小生成树 * 将全组合函数修改部分即可 * 生成所有节点数为m的组合序列,分别调用prim,不断更新ratio值 * !!!ratio值初始化放递归函数外 * 题目来源:2008 Asia Regional Beijing * wa ac 15ms 292k */#include #include #include using namespace std;#define原创 2011-04-23 19:39:00 · 481 阅读 · 0 评论 -
hdoj 1211-RSA
// hdoj 1211-(RSA)/* * 简单数论 计算M=D(c)=c^dmodn时直接每步取模即可 * 题目来源:杭电ACM省赛集训队选拔赛之热身赛 * ac 31ms 272k */#includeusing namespace std;int main(){ int p,q,e,l,i,d,n,fn,c,tmp,ans; while(cin>>p>>q>>e>>l){ n=p*q; fn=(p-1)*(q-1); d=1;原创 2011-04-23 15:12:00 · 479 阅读 · 0 评论 -
hdoj 3986 Harry Potter and the Final Battle
类型:最短路题目:http://acm.hdu.edu.cn/showproblem.php?pid=3986来源:2011 Multi-University Training Contest 15 - Host by WHU思路:伏地魔可以破坏任何一条边,当他破坏的边不是最短路上的边的时候,哈利波特可以选择走最短路。当破坏最短路上的边的时候,为保证最坏情况下的最短路,枚举删除最短原创 2012-03-23 18:46:23 · 285 阅读 · 0 评论 -
hdoj 2437 Jerboas
类型:拓扑排序题目:http://acm.hdu.edu.cn/showproblem.php?pid=2437来源:2008 Asia Chengdu Regional Contest Online思路:题目是求到某个满足条件的节点的最短路且路径长度为k的倍数。使用二维数组dist[i][j]记录当从源点到当前节点i且满足路径长度 % k = j时的最短路径长度则最终结果为d原创 2012-03-26 20:39:37 · 362 阅读 · 0 评论 -
hdoj 1698 Just a Hook
类型:一维线段树来源:2008 “Sunline Cup” National Invitational Contest题目:线段更新【颜色下移】,求区间最大值// hdoj 1698 Just a Hook// wa ac 437MS 1416K#include #include #include using namespace std;#define FOR(i,a原创 2012-03-09 16:33:29 · 259 阅读 · 0 评论 -
hdoj 4059 The Boss on Mars
类型:数学题目:http://acm.hdu.edu.cn/showproblem.php?pid=4059来源:2011 Asia Dalian Regional Contest思路:参考:http://blog.sina.com.cn/s/blog_69c3f0410100vqfe.html四次方和公式:f(n) = 1^4 + 2^4 + … + n^4 = n *原创 2012-04-04 11:14:50 · 307 阅读 · 0 评论 -
hdoj 3667 Transportation
类型:最小费用流题目:http://acm.hdu.edu.cn/showproblem.php?pid=3667来源:2010 Asia Regional Harbin思路:对于每条边,不同流量的费用不同,可以将其拆边:对于容量为x的边,拆成x条容量为1的边,费用分别为1,3, 5,7....(2 * x - 1)。第i次取该路时,费用为a * (2 * i - 1),此时流原创 2012-04-02 19:53:39 · 290 阅读 · 0 评论 -
hdoj 1506 | poj 2559 Largest Rectangle in a Histogram
类型:递推题目:http://poj.org/problem?id=2559思路:从左向右扫一遍,记录l[i](以i为最低高度的左边界),从右向左扫一遍,记录r[i](以i为最低高度的右边界)从左向右扫描时,判断当前位置的前一个位置,如果该位置的hi值大于当前位置的hi值,则更新当前l[i]值为l[i] - 1位置的l[l[i] - 1]值,循环直至l[i] - 1位置的hi小于当原创 2012-03-16 11:39:48 · 312 阅读 · 0 评论 -
hdoj 3660 Alice and Bob's Trip
类型:树形DP题目:http://acm.hdu.edu.cn/showproblem.php?pid=3660来源:2010 Asia Regional Harbin思路:令状态dp[i]表示以i为根时到叶子节点的最优值,当i为bob时,取最大值,当i为alice时,取最小值。用dist[i]记录从0节点到当前节点的路径的长度。当搜索到某条边(u, v)时,根据题意知始终有:di原创 2012-04-01 18:33:55 · 275 阅读 · 0 评论 -
hdoj 1513 Palindrome
类型:DP 题目:http://acm.hdu.edu.cn/showproblem.php?pid=1513 思路: 状态dp(i, j)表示从位置i到位置j最少需要插入的字符数 情况1:str[i] == str[j] 则dp(i, j) = min(dp(i, j), dp(i + 1, j - 1)) 情况2:str[i] != str[j] 则dp(i, j) = min原创 2012-03-16 09:37:08 · 256 阅读 · 0 评论 -
hdoj 3666 THE MATRIX PROBLEM
类型:差分约束题目:http://acm.hdu.edu.cn/showproblem.php?pid=3666来源:2010 Asia Regional Harbin思路:对于题目容易得到:L 对于乘法的消除可以使用对数的性质。得到:log(a[i]) - log(b[j]) 添加边:(j + n, i, log(U / c[i][j])) 和 (i, j + N,原创 2012-04-02 15:46:18 · 292 阅读 · 0 评论 -
hdoj 3203 Door Repairing
类型:DP题目:http://acm.hdu.edu.cn/showproblem.php?pid=3203来源:2009 Shanghai Invitation Contest Host by DHU思路:设状态dp(i, 0)表示第i个人来之前门坏,到结束时的最小花费,dp(i, 1)表示第i个人来之前门好,到结束时的最小花费。当第i个人来之前门坏时,YY有两种选择,修或者原创 2012-03-31 08:51:15 · 325 阅读 · 0 评论