HDU-1005 Number Sequence
来源:互联网 发布:网络婚姻游戏 编辑:程序博客网 时间:2024/06/04 20:42
分析:由于n是1e8直接暴力是不可能了,观察到取模数是7,所以f[i]取模无非在0~7之间,而A和B是不变的,f[i]由f[i - 1]和f[i - 2]转移过来,最多也就有49种可能,大于它的时候找到循环节输出即可
代码:
#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#include<map>#include<string>#include<vector>using namespace std;const int N = 1010;int f[60],res[60];int main(){ int a,b,n; while(scanf("%d%d%d",&a,&b,&n) && a && b && n) { memset(f,0,sizeof(f)); memset(res,0,sizeof(res)); f[1] = f[2] = 1; int flag = 0; int st,ed; for(int i = 3; i <= n; i++) { f[i] = (a * f[i - 1] + b * f[i - 2]) % 7; // printf("%d\n",f[i]); for(int j = 2; j <= i - 1; j++) { if(f[j] == f[i] && f[j - 1] == f[i - 1]) { st = j - 1; ed = i - 1; flag = 1; break; } } if(flag)break; } if(flag) printf("%d\n",f[(n - ed) % (ed - st) + st]); else printf("%d\n",f[n]); } return 0;}
阅读全文
0 0
- HDU 1005 Number Sequence
- hdu 1005 Number Sequence
- HDU 1005 Number Sequence
- hdu 1005 Number Sequence
- HDU 1005 Number Sequence
- HDU 1005 Number Sequence
- HDU 1005 Number Sequence
- HDU--1005--Number Sequence
- hdu 1005 Number Sequence
- HDU 1005 Number Sequence
- HDU 1005 Number Sequence
- HDU 1005 Number Sequence
- hdu - 1005 Number Sequence
- HDU 1005 Number Sequence
- hdu-1005-Number Sequence
- HDU 1005 Number Sequence
- HDU 1005 Number Sequence
- HDU 1005Number Sequence
- python中的eval函数
- 物料主数据增强
- 一个比较有意思的评论留言
- DockerCon2017 Euro D1:宣布同时支持Swarm和Kubernetes
- JSP页面获取当前日期
- HDU-1005 Number Sequence
- 选择云会计软件时需要考虑的3点行业趋势
- 正确使用Block __weak __strong
- html打印功能
- [linux-shell]crontab的介绍和使用(linux的定时)
- 推荐系统评测指标—准确率(Precision)、召回率(Recall)、F值(F-Measure)
- ros发布gps定位信息
- 数论基础
- Spring Boot 配置文件和日志文件放到jar之外