上一页 1 ··· 3 4 5 6 7 8 9 10 11 下一页
摘要: https://hihocoder.com/problemset/problem/1712 感觉解法呼之欲出,却出不来。。 一个很好的思路是,根据新的顺序表,把给定的n组字符串换成旧表对应的字符,然后用strcmp 阅读全文
posted @ 2018-04-29 23:36 Surprisez 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 大数加法 http://acm.hdu.edu.cn/showproblem.php?pid=1002 先一轮加上再一轮进位 大数减法 http://bailian.openjudge.cn/practice/2736/ 函数里实现的是:被减数大于减数的情况。 分别判断:如果被减数长度大于减数,直接 阅读全文
posted @ 2018-04-29 09:56 Surprisez 阅读(197) 评论(0) 推荐(0) 编辑
摘要: https://hihocoder.com/problemset/problem/1323 刚开始真没看出来这是一道dp题。。 dp[i][j]表示i~j段修改成回文串所需的最少操作次数。然后根据s[i]和s[j]是否相等写出转移方程即可。 注意删除和插入操作其本质是一样的。 阅读全文
posted @ 2018-04-26 22:06 Surprisez 阅读(173) 评论(0) 推荐(0) 编辑
摘要: https://vjudge.net/problem/HDU-6026 我一直想不明白的是,它的乘法是如何保证n-1条边的。后来画了一张图大概能明白了。 结合最后的乘法二层循环的代码来看,当i=4的时候,j有1和3满足条件,3满足不用说是迪杰斯特拉本身跑出来的,1满足条件,而中间的点2、3也可以有自 阅读全文
posted @ 2018-04-26 08:45 Surprisez 阅读(160) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3087 注意复制字符串的时候,要在末尾加上'\0',否则导致strcmp出错。 还有就是开数组大小的时候看清楚一点,别开错了debug了好久。 阅读全文
posted @ 2018-04-25 23:15 Surprisez 阅读(131) 评论(0) 推荐(0) 编辑
摘要: https://cn.vjudge.net/problem/HDU-6024 分开考虑某一点种与不种,最后取二者的最小值。 dp[i][1] = min(dp[i-1][0], dp[i-1][1])+c[i]; dp[i][0]则是j从i-1~1递减,判断当j种是,i的最小值,然后取总的最小。 注 阅读全文
posted @ 2018-04-22 11:15 Surprisez 阅读(127) 评论(0) 推荐(0) 编辑
摘要: https://vjudge.net/problem/POJ-1651 类似矩阵链乘,dp[i][j]表示取走(i, j)中所有数的最小情况,而转移方程dp[i][j]=min(dp[i][j], dp[i][k]+dp[k][j])表示最后取走的时k的情况 阅读全文
posted @ 2018-04-20 21:55 Surprisez 阅读(103) 评论(0) 推荐(0) 编辑
摘要: https://vjudge.net/problem/HDU-3466 一开始想到了是个排序后的背包,但是排序的策略一直没对。 两个物品1和2,当p1+q2>p2+q1 => q1-p1<q2-p2时选1. 阅读全文
posted @ 2018-04-20 18:42 Surprisez 阅读(90) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1171 多重背包题目不难,但是有些点不能漏或错。 阅读全文
posted @ 2018-04-19 22:54 Surprisez 阅读(137) 评论(0) 推荐(0) 编辑
摘要: https://vjudge.net/problem/HDU-2955 概率是浮点数,只能做值(而且这里是累乘,也不能化成整数),这里注意要化成安全概率(1-p[i]),求安全概率的最大值。 钱数作二层循环,最后用max取满足概率条件的最大值(再化回被抓概率)。 阅读全文
posted @ 2018-04-19 22:15 Surprisez 阅读(112) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 下一页