解题心得:

1、对于数据很大,很可怕,不可能用常规手段算出最后的值在进行mod的时候,可以思考找规律。

2、找规律时不必用手算(我傻,用手算了好久)。直接先找前100项进行mod打一个表出来,直接看就行了。

3、对于像斐波那契数列(本题)的那样,凭借肉眼无法找到规律的时候,可以观察本题的特点。那就是,第一项和第二项不会变,都为1,1。所以循环的时候必定是以1、1为开始,中间的数可以直接记录,很玄幻。

4、还是边界问题,这很重要,这时候数列尽量从1开始,因为在询问的时候都是询问的第n个数,要时刻保持清醒不然要弄得自己很混乱,比如n 个循环一次那么,m%n == 0的时候刚好是最后一个,m%n == 1的时候才是第一个。

题目:

Problem Description

A number sequence is defined as follows:

f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.

Given A, B, and n, you are to calculate the value of f(n).

Input

The input consists of multiple test cases. Each test case contains 3 integers A, B and n on a single line (1 <= A, B <= 1000, 1 <= n <= 100,000,000). Three zeros signal the end of input and this test case is not to be processed.

Output

For each test case, print the value of f(n) on a single line.

Sample Input

1 1 3

1 2 10

0 0 0

Sample Output

2

5

#include<stdio.h>
int main()
{
int num[100];
int a,b,n,i;
num[0]= 1;//从一开始其实更简单
num[1]= 1;
while(scanf("%d%d%d",&a,&b,&n)!=EOF)
{
if(a == 0 && b == 0 && n == 0)
break;
for(i=2;i<50;i++)
/*由于f(n)是由前两个数字组合产生,那么只要有两个数字组合相同的情况发生就一定一会产生循环!
两个数字的组合的最大可能值为7x7=49,因此只要在调用迭代方法中限制n的在0~48就可以了*/ {
num[i] = (a*num[i-1] + b*num[i-2])%7;
if(num[i] == 1 && num[i-1] == 1)
break;
}
n = n%(i-1);
if(n == 0)//这里需要讨论,注意是i-2,第i-1项,数列中第i-2个
printf("%d\n",num[i-2]);
else
printf("%d\n",num[n-1]);
}
}

递推:Number Sequence(mod找规律)的更多相关文章

  1. HDU1005 Number Sequence(找规律,周期是变化的)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1005 Number Sequence Time Limit: 2000/1000 MS (Java/O ...

  2. HDU 1005 Number Sequence(找规律)

    链接:传送门 题意:略 思路:f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7 -> f(n) = (A * f(n-1)%7 + B * f(n-1)%7) ...

  3. ZOJ 3622 Magic Number 打表找规律

    A - Magic Number Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu Subm ...

  4. 暑假集训 #3div2 C Sequence 数字找规律

    C. Sequence (64 Mb, 1 sec / test)Integer sequences are very interesting mathematical objects. Let us ...

  5. hdu4952 Number Transformation (找规律)

    2014多校 第八题 1008 2014 Multi-University Training Contest 8 4952 Number Transformation Number Transform ...

  6. HDU 1391 number steps(找规律,数学)

    Starting from point (0,0) on a plane, we have written all non-negative integers 0, 1, 2,... as shown ...

  7. Harmonic Number (II) 数学找规律

    I was trying to solve problem '1234 - Harmonic Number', I wrote the following code long long H( int  ...

  8. HDU 2062 Subset sequence (找规律)

    题目链接 Problem Description Consider the aggregate An= { 1, 2, -, n }. For example, A1={1}, A3={1,2,3}. ...

  9. The 19th Zhejiang University Programming Contest Sponsored by TuSimple (Mirror) B"Even Number Theory"(找规律???)

    传送门 题意: 给出了三个新定义: E-prime : ∀ num ∈ E,不存在两个偶数a,b,使得 num=a*b;(简言之,num的一对因子不能全为偶数) E-prime factorizati ...

随机推荐

  1. 框架使用-Sql拼接

     Sql语句拼写: 查询 DQueryDom DmoQuery(返回的整个对象) 更新 DQUpdateDom 删除 DQDeleteDom 条件 dom.Where.Conditions.Add(D ...

  2. Chart.js: 一个简单的 JS Chart Library

    Chart.js 是一个 Open Source 的 JavaScript Chart Library.它一共有 6 中 Chart,全都是 HTML5 based. 底下是 Chart.js 所提供 ...

  3. EL_JSTL

    EL(Expression Language)EL表达式 作用:在JSP中消灭java代码 语法: "${ }" 用法:参考jsp页面 //Servlet中,: User user ...

  4. 一些C/C++中的函数

    项目中使用到的C/C++中的一些函数,记录下来加以理解和掌握. 1.memset( ) memset是计算机中C/C++语言函数.将s所指向的某一块内存中的前n个 字节的内容全部设置为ch指定的ASC ...

  5. UGUI的事件系统分析

    UGUI的源码还是非常清晰的,打开源码可以发现, 从UGUI的源码可知:在EventSystem中调用每一帧函数来实现: private void TickModules() { for (var i ...

  6. logname,who -m,who -q,id,su,su -l 用户名,su -,date,cal,cal 12 2009,cal -y 2008,du -s 目录,

    logname,who -m,who -q,id,su,su -l 用户名,su -,date,cal,cal 12 2009,cal -y 2008,du -s 目录,

  7. sql server 2016新特性 查询存储(Query Store)的性能影响

    前段时间给客户处理性能问题,遇到一个新问题, 客户的架构用的是 alwayson ,并且硬件用的是4路96核心,内存1T ,全固态闪存盘,sql server 2016 . 问题  描述 客户经常出现 ...

  8. PHP重定向的三个方法

    js的重定向方法:location.href=目标 url(如 https:www.baidu.com); php的重定向方法: header("location: https:www.ba ...

  9. 将腾讯视频客户端缓冲的文件转换为一个MP4格式文件

    打开腾讯视频windows客户端,播放要下载的视频,逐步快进使其缓冲完毕: 按照下图所示,复制缓存路径: 在cmd.exe的界面中输入“cd C:\854456b6d5a187ff3c0f553918 ...

  10. 如何处理SAP HANA Web-Based Development Workbench的403 Forbidden错误

    打开SAP云平台上的SAP HANA Web-Based Development Workbench超链接: 遇到错误信息:403 - Forbidden - The server refused t ...