tyvj 1091 问数列中的等差数列有多少个
2010-07-23 23:28
162 查看
| |||
|
#include<cstdio>
#include<cstring>
using namespace std;
int data[1005],f[1005][2010];
//f[i][j]表示等差数列最后一项为i,数列公差为j的等差数的个数
const int BLOCK=1010;
int main()
{
int n;
while(cin>>n)
{
memset(f,0,sizeof(f));
for(int i=1;i<=n;i++) cin>>data[i];
int cnt=0;
for(int i=1;i<=n;i++)
{
cnt=(cnt+i)%9901;//题目要求要mod9901
for(int j=i-1;j>=1;j--)
{
int x=data[i]-data[j];//公差
cnt=(cnt+f[j][x+BLOCK])%9901;
f[i][x+BLOCK]=(f[i][x+BLOCK]+f[j][x+BLOCK]+1)%9901;
}
}
cout<<cnt<<endl;
}
return 0;
}
相关文章推荐
- 等差数列 && 搭建双塔(tyvj 1091 && tyvj 1114)
- TYVJ 1091 等差数列 解题报告
- tyvj 1305 最大m子段和 单调队列 求连续l(1<=l<=k)个数的和的最大值 数列不可循环
- 十三、数列如下:【1】,【2】,3,6,9,18,27… ,用递归求第20项的值是多少?
- 求无序数列中最长的等差数列(思路及实现)
- tyvj1114 等差数列
- CDOJ 1104 求两个数列的子列的交集 查询区间小于A的数有多少个 主席树
- 一个有序数列,序列中的每一个值都能够被2或者3或者5所整除,这个序列的初始值从1开始,但是1并不在这个数列中。求第1500个值是多少?
- hdu 5256 最少修改多少个数 能使原数列严格递增 (LIS)
- 求特征数列(第n个数是第n-1个数和第n-2个数的和)的第X个数是多少
- 判断一个无序数列是否是等差数列
- 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 程序分析: 兔子的规律为数列1,1,2,3,5,
- tyvj 1318 comb 在组合数C(n,0),C(n,1),……,C(n,n-1),C(n,n)中,有多少个奇数。
- tyvj 1233 数列 删除数列一些数后使得a[i]=i的数最多
- JoyOI 1091 等差数列(DP)
- tyvj 1080 N皇后 N*N的棋盘上有多少中方法使得得每行、每列只有一个、每条对角线上至多有一个棋子 二进制加速
- tyvj 1202 数数食物链 求食物网中共有多少条食物链
- 使用递归求出0,1,1,2,3,5,8,13,21,34.........数列的第20项为多少
- 【tyvj1091】等差序列(dp)
- 这样的数列共有多少个