思路:这题和wikioi 1306一样,也都是求的不同子串的个数,但是wikioi 时间比较长,然后用Trie树就过了。但是我用那个代码提交这题的时候就WA了,比较晕……因为这题有多组样例,所以超了点时间。
所以这题当然就是用后缀数组做的啦!
算法分析:
每个子串一定是某个后缀的前缀,那么原问题等价于求所有后缀之间的不相同的前缀的个数。如果所有的后缀按照suffix(sa[1]),suffi...
分类:
其他好文 时间:
2014-08-13 19:09:17
阅读次数:
221
Problem C SPOJ GNYR09Fdp题,dp可能刚刚开始对大家来说比较难,但是静下心来分析还是比较简单的;dp(i ,j ,k)表示前i个数中,当前累积和为j,末尾数字为k的方案数。考虑第i个位置的2种情况: 1.放0:dp(i,j,0) = dp(i-1,j,0) + dp(i-1,j...
分类:
其他好文 时间:
2014-08-11 17:23:42
阅读次数:
164
题目大意:一个有n面的色子抛掷多少次能使所有面都能被抛到过,求期望值总面数为n,当已经抛到过 i 个不同面时,我们抛出下一个不同面的概率为 (n-i)/n,那么抛的次数为 n/(n-i)将所有抛出下个面的次数累加起来就好了 1 #include 2 int main(){ 3 int ka...
分类:
其他好文 时间:
2014-08-11 17:11:32
阅读次数:
196
统计一个只由大写字母构成的字符串的,子串数目,这里指的是子串不是子序列,可以不连续,请注意然后我按照计数DP的思想,dp[i][j]表示长度为i的子串,最后一个字母为j然后为了去重,每一次dp的时候,记录这个时候最后一位所在的位数,而且之前用一个后缀记录之后有没有该字母,这样每次,从上一次的j所处的...
分类:
其他好文 时间:
2014-08-11 11:39:42
阅读次数:
148
这次完全是水题大集合啊,希望大家A的开心;前两个题是我找的,后两个是陶叔找的,另外因为我的偷懒,下面所有的代码都是陶叔亲自写的,十分感谢陶叔;陶叔暑假为了大家的集训,牺牲了很多自己宝贵的时间,大家接下来要好好训练啊!!!!废话少说,进入正题:Problem A SPOJ QUEST5签到题:将所有的...
分类:
其他好文 时间:
2014-08-11 11:35:42
阅读次数:
211
DescriptionVaibhav Sir and Saikat Sir, after completing their graduation, got a job together at a store.Their boss at the store was Sidharth Sir, who ...
分类:
其他好文 时间:
2014-08-11 08:22:01
阅读次数:
270
DescriptionString Matching is an important problem in computer science research and finds applications in Bioinformatics, Data mining,pattern recognit...
分类:
其他好文 时间:
2014-08-11 08:21:41
阅读次数:
345
给定一个数字串,问有多少种拆分方法,题目所谓的拆分,就是分成若干个子块,每个块的和 即为各个数字相加,当前块的和一定要小于等于后面的块的和比如1117 就有这些[1-117], [1-1-17], [1-11-7], [1-1-1-7], [11-17],and [111-7]肯定是计数DP,而且二...
分类:
其他好文 时间:
2014-08-10 18:07:20
阅读次数:
257
题目大意:就是给定一段区间令其中的数增加一个递增序列(也就是说第一个+1,第二个+2.。。。。)询问操作是区间的和这里的查询很简单,但是对于添加递增序列入区间就比较搞脑子了我们需要一个add[]作为区间的首个数字增加的值,del[]表示等差数列的公差,因为你每次添加进入一个等差数列,是可以叠加的但公...
分类:
其他好文 时间:
2014-08-09 18:21:08
阅读次数:
279
题意: 有N(N≤300000)coder, 每个coder[i]有两个属性A[i] 和 H[i] , 。当(A[i] ≥ A[j] && H[i] ≥ H[j]) && (A[i] > A[j] || H[i] > H[j]) 时,认为coder[i] 比 coder[j]优秀 ,问每个coder...
分类:
其他好文 时间:
2014-08-09 15:45:38
阅读次数:
209