题意:问你字符串一定范围能 s[i] = s[i-1]的个数解题思路:简单dp解题代码: 1 // File Name: 313b.cpp 2 // Author: darkdream 3 // Created Time: 2014年07月24日 星期四 08时02分38秒 4 5 #includ....
分类:
其他好文 时间:
2014-07-24 10:04:23
阅读次数:
170
题目:10954 - Add All
题目大意:求n个数的和,但是有点不一样的是题目要求计算最少花费。每次两个数相加,得到的那个数就是每次计算的cost。
解题思路:之前没有想到用multiset,自己写好麻烦。要求cost 最小的话,说明每次都将这些数里面最小的两个做相加,这样每次花费都是最小的。用multiset,就可以将每次计算的结果插入这些已经有序的数据中相应的位置,使...
分类:
其他好文 时间:
2014-07-23 22:35:17
阅读次数:
234
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4736解题思路:在treap里面加上一个num域,用来表示这个节点重复数的个数就行!WA了很多次,发现自己在处理负数的时候有点问题了。然后拿cxlove 的SBT代码比对...
分类:
其他好文 时间:
2014-07-23 22:18:07
阅读次数:
361
题目链接:uva 1341 - Different Digits
题目大意:给定一个数字n,要求求一个数字m,m可以整除n,并且尽量组成的数字种类(0~9)尽量少,在种类相同的情况下数值尽量小。
解题思路:可以证明两种数字肯定可以组成m,假设有数字k,一种数字可以有k,kk,kkk,kkkk,…整除n剩的数一定在0~n-1之间,所以肯定存在两个由k数字组成的数字同模,那么这两个数相减所...
分类:
其他好文 时间:
2014-07-23 20:57:35
阅读次数:
272
Balance
Time Limit: 1000MS
Memory Limit: 30000K
Total Submissions: 10326
Accepted: 6393
题意:给你n个挂钩g个砝码 以及n个挂钩的距离天平中心距离(负的代表左边正的代表右边)g个砝码的重量。
要求输出可以令天平平衡的方法种类
解题思路 ...
分类:
其他好文 时间:
2014-07-23 18:10:10
阅读次数:
194
题目:311 - Packets
题目大意:给出1*1, 2*2,3 *3, 4*4, 5*5, 6*6的箱子的个数,现在有若干个6*6的箱子,问最少用多少个箱子可以将给定的箱子都装进去。
解题思路:对于6 * 6的箱子,每个都要耗费一个箱子。
对于5 * 5的箱子, 装完这个后还能再装11个1 * 1....
分类:
其他好文 时间:
2014-07-23 17:20:12
阅读次数:
227
String
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4821
题目大意:
给定一个字符串(最长10^5)。从中选一个长度为 m * l 的子串,要求该子串能拆分为m个长度为 l 的一一不同的串。问有多少种取法。
解题思路:
比赛的时候,没有将串按照模 l 之后分类,导致TLE。。
字符串的哈希为:a[i...
分类:
其他好文 时间:
2014-07-23 17:05:41
阅读次数:
277
题目:11100 - The Trip, 2007
题目大意:给出n个包,大包可以套小包,要求要最后的包的数目最小,任意给出一种组合方式即可。
解题思路:相同大小的包的数目决定了最后剩余的包的数目。
将这些包排成有序的,这样就是一个递增的序列,保证分组后同一组中后面的包一定比前一个大一些。总共m组,输出的时候只要每隔m个数输出一个数。
...
分类:
其他好文 时间:
2014-07-23 16:36:02
阅读次数:
164
题目大意
给定M张牌,可以翻转N次,每次可以翻转恰好Xi张牌,刚开始牌面全部朝下,问经过N次翻转之后可能产生的扑克序列数(如样例hint)。
解题思路
现场还是没出……想到dp的思路但复杂度高达N^2.
可以观察到,我们最后正面朝上的牌的数量奇偶总是一定的(如1,3,5),因为不同奇偶情况就需要至少多翻一次,但翻动的次数已经固定不能更改。...
分类:
其他好文 时间:
2014-07-23 13:27:06
阅读次数:
224
解题思路:
简单题,求解 C(n+m, m) .
代码:
#include
#include
using namespace std;
long long c(long long n,long long m)
{
long long ans=1;
for(int i=1;i<=m;i++)
ans=ans*(n--)/i;
return ans;...
分类:
其他好文 时间:
2014-07-23 13:18:27
阅读次数:
234