对于斐波拉契经典问题,我们都非常熟悉,通过递推公式F(n) = F(n - 1) + F(n - 2),我们可以在线性时间内求出第n项F(n),现在考虑斐波拉契的加强版,我们要求的项数n的范围为int范围内的非负整数,请设计一个高效算法,计算第n项F(n)。第一个斐波拉契数为F(0) = 1。 给定...
分类:
其他好文 时间:
2015-07-24 22:26:20
阅读次数:
149
The Embarrassed Cryptographer
Time Limit: 2000MS
Memory Limit: 65536K
Total Submissions: 12905
Accepted: 3472
Description
The young and very promising cryptographer O...
分类:
其他好文 时间:
2015-07-24 20:48:15
阅读次数:
124
C语言自动转换不同类型的行为称之为隐式类型转换 ,转换的基本原则是:低精度类型向高精度类型转换,具体是: int -> unsigned int -> long -> unsigned long -> long long -> unsigned long long -> float -> dou...
分类:
编程语言 时间:
2015-07-24 20:19:48
阅读次数:
126
求模(mod):直接在草稿纸上用小学方法算除法就能看出来 1 #include 2 #include 3 char m[1010]; 4 int main(){int n,temp; 5 while(~scanf("%s %d",m,&n)){temp=0; 6 for(in...
分类:
其他好文 时间:
2015-07-24 20:17:16
阅读次数:
91
DescriptionThe short story titled Coconuts, by Ben Ames Williams, appeared in the Saturday Evening Post on October 9, 1926. The story tells about five...
分类:
其他好文 时间:
2015-07-24 10:29:41
阅读次数:
79
对于每个点都跑最短路, 然后我们得到了个DAG, 在这DAG上更新每条边的答案.考虑e(u, v)∈DAG对答案的贡献: 假设从S到u得路径数为A[u], 从v出发到达任意点的路径数为B[v], 那么e(u, v)的答案可以加上A[u] * B[v](显然). A可以按拓扑序递推得到, B可以通过记...
分类:
其他好文 时间:
2015-07-23 23:15:56
阅读次数:
151
1、动态规划的思想
动态规划即把全局问题的解分解为一个个子问题的解,一个个子问题的解存在递推关系,即上一个问题的解是下一个问题解的基础,这样直到求解出全局问题的解。
2、求一个数组中连续几个数相加的最大值;
给定一个数组,它里面全是一些数字,要找出任何连续的值中最大的和. 例: 已有数组:{31,-41,59,26,-53,58,97,-93,-23,84}
它的连续的...
分类:
编程语言 时间:
2015-07-22 22:44:09
阅读次数:
132
water~数据不大,枚举首尾即可,也不用高精度。代码如下:#includeint main() { int kase(0), n; while (scanf("%d", &n) == 1) { int s[20]; for (int i = 0; i != n; ++i) scanf("%d", ...
分类:
其他好文 时间:
2015-07-22 13:01:41
阅读次数:
127
---恢复内容开始---题意:已知n*n的矩阵A和正整数k,求S = A + A^2 + A^3 + .... + A^k并输出S的各元素对M取余后的答案。分析:如果选择依次求解矩阵的幂,然后将其累加,时间复杂度是O(kn^3logk),效率太低。但如果试着找一下关于S的递推公式,效率将大大提升。我...
分类:
其他好文 时间:
2015-07-22 09:19:33
阅读次数:
102
递归思路 超时算法#includeusing namespace std;#define Size 101int Triangle[Size][Size];int n;int GetAns( int i, int j ){ if( i==n ) return Tr...
分类:
其他好文 时间:
2015-07-21 21:57:50
阅读次数:
118