摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3853 题目概述: 在一个r*c的网格中有一个人有概率向右走,向下走或者留在原地,走一步产生2点花费,球走到终点的期望花费。 大致思路: 概率DP的入门题,学会了求概率要正着推,而求期望需要逆着推。 DP 阅读全文
posted @ 2017-03-03 17:11 CtrlKismet 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1698 题目概述: 一段区间从1~n,每次操作将某一段全部改为x,操作完成后求整个区间和。 大致思路: 典型的一个RMQ模板题。只需要注意add操作里pushdown的+=改成=就可以了。 还有注意在bu 阅读全文
posted @ 2017-02-26 19:47 CtrlKismet 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4267 题目概述: 略。 大致思路: RMQ问题。刚开始其实是懵逼的,想了好久add操作怎么写,后来发现k其实很小,所以其实add总共只有55种情况(每个k及它所对应的余数)。 然后会发现用二维数组来存所 阅读全文
posted @ 2017-02-26 16:21 CtrlKismet 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2846 题目概述: 给你P个单词以及Q个询问,对于每个询问,回答一个整数,表示询问的字符串是多少个所给的单词的子串。 大致思路: 很容易看出是一个字典树的题,因为只要是子串都满足题意,所以在插入的时候需要 阅读全文
posted @ 2017-02-22 17:31 CtrlKismet 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2072 题目概述: 给你一些句子,统计每个句子中单词的个数。 大致思路: 这个题有几种思路,一种是用Tire树,在插入单词过程中如果新建了一个节点便说明这个单词是新单词,需要注意的是有些单词可能是另一些的 阅读全文
posted @ 2017-01-26 21:45 CtrlKismet 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1251 题目概述: 给你一些单词和一些询问,对于每个询问求出所有单词中以询问为前缀的单词个数。 大致思路: 稍微修改一下Tire树就好了,对每个节点增加一个标记来记录到这个节点共有几个单词,这个题还需要注 阅读全文
posted @ 2017-01-21 22:04 CtrlKismet 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1305 题目概述: 给出几组编码,对于每组编码若存在编码i是编码j的前缀则输出not。 大致思路: 挺直白的tire树,不过我的做法并没有把所有编码插入树中,而是一边插入一边判断,出现not的情况之后所有 阅读全文
posted @ 2017-01-21 20:40 CtrlKismet 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1087 题目概述: 求所有的严格上升子序列的最大和。 大致思路: 有点类似于求最长上升子序列。 用DP解决。 令f[i]表示前i个数中所有严格上升子序列的最大和,转移方程为: 边界条件为f[i]=a[i] 阅读全文
posted @ 2017-01-01 17:51 CtrlKismet 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1075 题目概述: 首先给你一些英语单词以及它们在火星文中对应的单词,然后给你一些用火星文写的字符串,请你翻译。 大致思路: 其实就是个很简单的字符串替换,麻烦就麻烦在如何存储字符串之间的对应关系。 直接 阅读全文
posted @ 2017-01-01 17:34 CtrlKismet 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1172 题目概述: 对于每组数据,先给出一个n,然后n行每行一个四位数,然后两个数b,c表示与答案有b个数相同,c个数在同一位置上,对于所有的n个给出的四位数,如果推出的答案唯一则输出,否则输出“Not 阅读全文
posted @ 2016-12-30 22:50 CtrlKismet 阅读(224) 评论(0) 推荐(0) 编辑