基本C/C++、STL(vector、set、map、queue、string、algorithm)枚举、贪心、递归、分治、递推、模拟构造、位运算、常数优化数据结构队列、堆、栈、链表排序(插入、冒泡、快速、归并、堆、桶、基数)二分查找、散列表、并查集、哈夫曼树排序二叉树、左偏树、平衡树(Splay/...
分类:
编程语言 时间:
2014-10-18 00:34:46
阅读次数:
340
DescriptionEdward is the headmaster of Marjar University. He is enthusiastic about chess and often plays chess with his friends. What's more, he bough...
分类:
其他好文 时间:
2014-10-17 21:52:25
阅读次数:
312
题目大意:给定一棵n个节点的树的节点的度数,其中一些度数无限制,求可以生成多少种树
Prufer序列
把一棵树进行以下操作:
1.找到编号最小的叶节点,删除这个节点,然后与这个叶节点相连的点计入序列
2.反复进行1,直到这棵树只剩下两个节点时,退出
比如说这个图(来自度受百科)
最小叶节点为2,删除2,将3计入序列
最小叶节点为4,删除4,将5计入序列
最小叶节点为5,删除...
分类:
其他好文 时间:
2014-10-17 12:03:41
阅读次数:
187
Integer Inquiry输入几行大整数, 求他们的和吗以0表示输入结束
分类:
编程语言 时间:
2014-10-16 22:56:23
阅读次数:
206
题目大意:轮状病毒基定义如图,求有多少n轮状病毒
这个递推实在是不会……所以我选择了打表找规律
首先运行以下程序
#include
#include
#include
#include
#define M 110
using namespace std;
struct abcd{
int to,next;
bool ban;
}table[M<<2];
int head[M],tot=1...
分类:
其他好文 时间:
2014-10-16 17:34:22
阅读次数:
240
在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你....
分类:
编程语言 时间:
2014-10-16 10:18:32
阅读次数:
257
很简单的递推题。d[n]=d[n-1]+d[n-k]注意每次输入a和b时,如果每次都累加,就做了很多重复性工作,会超时。所以用预处理前缀和来解决重复累加问题。最后一个细节坑了我多次:printf("%I64d\n",(s[b]-s[a-1]+mod)%mod);这句话中加mod万万不能少,因为理论上...
分类:
其他好文 时间:
2014-10-16 04:54:52
阅读次数:
168
题目:给定一个金额m,以及几种钱币面值(比如1,2,5),求m有多少种找钱方式
解答:
a(m, c): 金额m的找钱方式,此时最大钱币面值为c
a(m, c) = sigma( a(m - k*c, next_c) ); k=0~m/c, next_c=比c小的下一个面值的钱币,比如c=5, next_c = 2
按照以上递推式,可以写出递归函数:
int exchangeWays(i...
分类:
其他好文 时间:
2014-10-15 15:32:40
阅读次数:
155
#include#includeconst int maxn=3000;int f[maxn];int main(void){ int i,j,n; scanf("%d",&n); memset(f,0,sizeof(f)); f[0]=1; for(i=2;i=0;j...
分类:
其他好文 时间:
2014-10-15 10:59:00
阅读次数:
142