通常基于递归实现的代码比基于循环实现的代码要简洁很多比如 二叉树遍历以及
二叉树的许多操作递归由于是函数调用自身,每一次函数调用,都需要在内存栈中分配空间以保存参数、返回地址以及临时变量而每个进程的栈容量是有限的,当递归调用的层级太多时,就会导致
调用栈溢出递归有时伴随大量重复的计算, 二叉树遍历的...
分类:
其他好文 时间:
2014-06-11 07:31:55
阅读次数:
187
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?package
Test;/** * 斐波拉契数列问题(兔子问题) * 可推导递推公式 * f(n+1)=f(n)+f(n-1) * */public cla...
分类:
其他好文 时间:
2014-06-10 00:06:37
阅读次数:
295
【题目】题目详情高斯在上小学时发明了等差数列求和公式:1+2+..+100=5050。如今问题在于给你一个正整数n,问你他能够表示为多少种连续正整数之和?(自身也算)。输入格式:多组数据,每组数据一行,一个正整数n。
0#include using namespace std;int main(){...
分类:
其他好文 时间:
2014-06-09 22:06:08
阅读次数:
327
1798: [Ahoi2009]Seq 维护序列seqTime Limit:30
SecMemory Limit:64 MBDescription老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。
有长为N的数列,不妨设为a1,a2,…,aN 。有如下三种操作形式: (1)把数列中的一段...
分类:
其他好文 时间:
2014-06-08 23:20:09
阅读次数:
268
快速幂运算在第一次训练时候就已经遇到过,这里不赘述
同余模运算也很简单,这里也不说了,无非是(a+b)%m (a*b)%m 把m弄到里面变成(a%m+b%m)%m (a%m*b%m)%m
今天学的最重要的还是递归二分求等比数列
题目大意是给出A和B,求A^B的约数和
解这个题,首先,对A进行素因子分解得到
(PI(pi^ai))^B
然后我们有约数和公式:
...
分类:
其他好文 时间:
2014-06-08 15:17:06
阅读次数:
257
要询问一个数列的某区间的最大值,其中会更新数据。
这样的题目使用树状数组是可以的,但是因为要牵涉到区间操作,故此还是线段树比较好点。
不过使用树状数组也是可以的,就是查询的时候麻烦点,注意计算,不要超出区间了。
看下面的query函数,这是主要的难点函数,其中的-1操作和这个判断r - lowbit(r) >= l,都很蛋疼,一不小心就会出错。
#include
#inc...
分类:
其他好文 时间:
2014-06-08 09:02:49
阅读次数:
345
求两个排序数组的中位数。这个题可以有以下几个思路:
首先可以想到的是将两个数组merge起来,然后返回其中位数。
第二个是,类似merge的思想加上计数,找到(m+n)/2个数或者其前后的数,这个就可以算出中位数。这个方法对于各种情况需要一一考虑到。
第三个,假设A[k/2-1]<B[k/2-1],那么A[k/2-1]之前的数一定在整个有序数列中(m+n)/2之前。
这里我给出后面两种思路的代码。
代码一( 思路三)...
分类:
其他好文 时间:
2014-06-08 03:44:47
阅读次数:
231
首先想到线段树,然后刚开始写忽然想到树状数组求和岂不是更快,而且编程复杂度又小,于是把之前写的删掉,写树状数组,写完模版之后忽然发现这题竟然是区间修改!于是又删掉重写,忽然发现不会处理又加又乘的,果断看题解……经过几乎两个小时的调试,终于1A。需要注意的是,一定要让线段树的每一个区间保存的值时刻为正...
分类:
其他好文 时间:
2014-06-07 17:04:11
阅读次数:
229
等比数列的通项公式:\(a_n=a_1q^{n-1}\)求和公式:
\(S_n=\frac{a_1(1-q^n)}{1-q} (q \neq 1) \)等差数列的通项公式:
\(a_n=a_1+(n-1)d\)求和公式:\(S_n=na_1+\frac{n(n-1)}{2}d\)
分类:
其他好文 时间:
2014-06-07 17:01:36
阅读次数:
187
1、概述线段树,也叫区间树,是一个完全二叉树,它在各个节点保存一条线段(即“子数组”),因而常用于解决数列维护问题,基本能保证每个操作的复杂度为O(lgN)。线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。对于线段树中的每一个非叶子节点[a...
分类:
其他好文 时间:
2014-06-07 16:55:29
阅读次数:
307