HDU1005
2015-11-04 15:38
246 查看
题意:f(1)=1,f(2)=1,f(n)=a*(fn-1)+b*f(n-2). 输入a,b,n输出,f(n)
根据公式 f(n)=(a*f(n-1)+b*f(n-2))%7
可以发现,f(n-1)和f(n-2)的结果必然为0,1,2,3,4,5,6。7种可能
a,b是定值,那么f(n)只有7*7种结果,开个50的数组打表求f(1~50即可)
代码:
根据公式 f(n)=(a*f(n-1)+b*f(n-2))%7
可以发现,f(n-1)和f(n-2)的结果必然为0,1,2,3,4,5,6。7种可能
a,b是定值,那么f(n)只有7*7种结果,开个50的数组打表求f(1~50即可)
代码:
#include<stdio.h> int main() { int a,b,n; int i; int map[60]; while(scanf("%d%d%d",&a,&b,&n),a|b|n) { map[1]=map[2]=1; for(i=3;i<60;i++) map[i]=(a*map[i-1]+b*map[i-2])%7; printf("%d\n",map[n%49]); } return 0; }
相关文章推荐
- jsp 缓存设置
- 人生当中第一次转正
- Centos6.5 下安装PostgreSQL9.4数据库
- linux git 安装
- 151104的测试总结
- 博客开张啦~
- Wildcard Matching - LeetCode
- UVA-11383 Golden Tiger Claw (KM算法)
- git曲线
- Sort Colors
- DJI SDK开发——第一个程序
- OutLook设置签名,设置开机启动,最小化到托盘
- 【Android开发】之Fragment重要函数讲解
- 基于CDH5集群配置snappy压缩
- servlet容器中webservice的实现
- php利用header导出.doc或者.xls文件
- pixhawk飞控架构
- 理解JavaScript的临时包装对象
- 七、Web开发 ----- 集成在一起
- Android启动过程深入解析