题意:给指定数量的数字“1”,“2”,“3”……,“9”。用所有这些数字加上任意个0组成一个数,要求数能被11整除,且数的位数尽量小。能被11整除的数有一个特点,奇数位数字之和与偶数位之和的差为11的倍数。所以想到把所有数字分成两部分,即奇数位部分和偶数位部分,两部分的差相0即能被11整除(MOD ...
分类:
其他好文 时间:
2015-10-02 19:56:07
阅读次数:
325
题目传送门题意:n盆花涂色,相邻不能涂相同的颜色,从m中颜色选取k种颜色涂,保证正好有k种颜色分析:从m中颜色选取k种就是C (m, k),然后第一个有k种选择,之后的都有k-1种选择,这样是不超过k种颜色的方案,那么减去少了Ai颜色的方案数,用容斥原理,最后答案是C(m,k) × ( k × (k...
分类:
其他好文 时间:
2015-10-02 14:54:54
阅读次数:
215
n的规模可以状压,f[x][y][S]表示x行,y列,S集合的巧克力能否被切割。预处理出每个状态S对应的面积和sum(S),对于一个合法的状态一定满足x*y=sum(S),实际上只有两个变量是独立的。而且有x,y等效与y,x,那么这里取max(x,y)。转移的时候枚举S的非空真子集,横着切或者竖着切...
分类:
其他好文 时间:
2015-09-29 20:14:47
阅读次数:
140
如果状态定义为序号和重量的话,决策就是下一个垃圾捡或者不减,但是状态数太多了。如果只定义序号作为状态的话,决策就变成从前面的某个j一直捡到i才送回垃圾。这就变成了一个区间选最小值的问题,用单调队列维护。复杂度O(n)#includeusing namespace std;const int maxn...
分类:
其他好文 时间:
2015-09-29 18:40:13
阅读次数:
169
UVALive 2659题目:16*16的数独.试了一发大白模板./** @author: Cwind*///#pragma comment(linker, "/STACK:102400000,102400000")#include #include #include #include #incl....
分类:
其他好文 时间:
2015-09-25 00:02:54
阅读次数:
206
很容易想到二分,问题在与判断一个解的可行性。贪心,时间点最多两万,可以模拟每个时间点,将事件按开始时间排序,每次优先选已经开始了的且结束时间最早的任务来做,如果某个任务在deadline之前还没有结束说明当前解不可行。R的上界不太好估计,(远远达不到总和,但是比maxw大,因为任务在时间上有重叠),...
分类:
其他好文 时间:
2015-09-15 14:45:47
阅读次数:
135
删除边的操作不容易实现一般就是先离线然后逆序来做。逆序就变成了合并,用并存集判断连通,用Treap树来维护一个连通分量里的名次。Treap = Tree + Heap。就是用一个随机的优先级来平衡树。名次查询需要维护树的结点数量,假设当前在u点,u的左子树有n个结点,那么u的就是以u为根的树上第n+...
分类:
其他好文 时间:
2015-09-13 18:40:42
阅读次数:
221
kmp的代码很短,但是不太容易理解,还是先说明一下这个算法过程吧。朴素的字符串匹配大家都懂,但是效率不高,原因在哪里?匹配过程没有充分利用已经匹配好的模版的信息,比如说,i是文本串当前字符的下标,j是要匹配的模版串当前正在匹配的字符的下标。(下标都从零开始)当匹配到i = 4, j = 4的时候失配...
分类:
编程语言 时间:
2015-09-09 17:04:29
阅读次数:
126
kmp的代码很短,但是不太容易理解,还是先说明一下这个算法过程吧。朴素的字符串匹配大家都懂,但是效率不高,原因在哪里?匹配过程没有充分利用已经匹配好的模版的信息,比如说,i是文本串当前字符的下标,j是要匹配的模版串当前正在匹配的字符的下标。(下标都从零开始)当匹配到i = 4, j = 4的时候失配...
分类:
编程语言 时间:
2015-09-09 16:24:13
阅读次数:
185
原题链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2288题意:给你一个有向图,问你至少需要添加多少条边,使得整个图强连通。题解:就。...
分类:
其他好文 时间:
2015-09-08 20:10:43
阅读次数:
181