hdu 4658
来源:互联网 发布:淘宝家装日记哪里去了 编辑:程序博客网 时间:2024/06/12 20:47
/* 题目意思:将一个数n拆分成多个正数相加其中拆分数不能是k及k的倍数 */#include<cstdio>#include<algorithm>#include<iostream>using namespace std;using namespace std;#define P 1000000007#define N 100010int a[N];int main(){a[0]=1;for(int n=1;n<N;n++){int S=0;for(int i=1,w=0;;i++){w+=2*i-1;if(w>n)break;if(i&1)S=(S+a[n-w])%P;else S=(S-a[n-w]+P)%P;w+=i;if(w>n)break;if(i&1)S=(S+a[n-w])%P;else S=(S-a[n-w]+P)%P;}a[n]=S;}int _;scanf("%d",&_);while(_--){int n,k;scanf("%d%d",&n,&k);int S=a[n];for(int i=1,w=0;;i++){w+=(2*i-1)*k;if(w>n)break;if(~i&1)S=(S+a[n-w])%P;else S=(S-a[n-w]+P)%P;w+=i*k;if(w>n)break;if(~i&1)S=(S+a[n-w])%P;else S=(S-a[n-w]+P)%P;}printf("%d\n",S);}return 0;}
- HDU-4651 && HDU-4658
- hdu 4651&hdu 4658
- hdu 4658
- 分拆数 && hdu 4651 && hdu 4658
- 分拆数 && hdu 4651 && hdu 4658
- 分拆数 && hdu 4651 && hdu 4658
- 分拆数 && hdu 4651 && hdu 4658
- 整数拆分hdu 4651 && hdu 4658
- 五边形数定理 (hdu 4651 , hdu 4658)
- 整数拆分 hdu 4651 hdu 4658
- HDU 4651&&HDU 4658 五边形数定理
- HDU 4658 Integer Partition
- hdu 4658Integer Partition
- hdu 4658 Integer Partition
- HDU 4658 Integer Partition
- HDU-4658-Integer Partition
- hdu
- hdu
- C和汇编混合编程及示例
- 网页中代码的顺序是不可忽略的细节(网页渲染顺序)
- SE11建立的搜索帮助来实现关联搜索帮助。
- 【转】Setting up Automatic NDK Builds in Eclipse
- ListView系列(七)——Adapter内的onItemClick监听器四个arg参数
- hdu 4658
- COleDateTime使用
- FFMPEG采集摄像头数据并切片为iPhone的HTTP Stream流
- call_user_func
- Tomcat配置
- Eclipse导入项目svn插件无法自动跟踪版本的问题
- va_arg
- 并行加载与顺序执行–《高性能javascript》读书笔记(jquery加载顺序)
- hdu 4339 Query(两种思路求解)