hd acm1005
问题:
已知递推公式:f[i] = ( a * f[i-1] + b * f[i-2] ) % 7,f[1]=1,f[2]=1。
需要你输入三个数a,b,n。其中a,b用来补充上述公式,用补充后的公式计算 f[n]。
析:
每次输入a,b都会有一个对应的公式,由这个公式会得到的一个周期性的数列,然后利用这个周期来计算f[n]便可以了。所以如何找到周期是重点,因为每个周期开始时前两个数字会是1,1,这可以是一个标志,当然别的标志也可以;另外需要注意一点,如果a,b都能整除7,那么从f[3]向后都会成为0,可以直接结束。
代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
      int a,b,i,n,flag;
      int f[201]={1,1,1};
      while(scanf("%d%d%d",&a,&b,&n))
  {
            if(!(a||b||n)) break;                   //a,b,n全是0时结束循环
            flag=0;
            for(i=3;i<=200;i++)
    {
                  f[i]=(a*f[i-1]+b*f[i-2])%7;
                  if(f[i]==1&&f[i-1]==1                  //找到周期时结束
                        if(i>3) break;      //防止出现1,1,1,1,1,1,1......1,1......的情况
                  if(a%7==0&&b%7==0)                      //如果a,b都能整除7,则f[3]之后的全为0,直接输出并结束
                  {   
         flag=1;
                        break;
                  }
            }
             if(flag){
                  printf("0\n");
                  continue;
            }
               i-=2;                             //i-2是周期。
            n%=i;
           if(!n) n=i;
             printf("%d\n",f[n]);
      }
    return 0;
}
hd acm1005的更多相关文章
- ATI Radeon HD 5450 with full QE/CI Support ( 转载 )
		ATI Radeon HD 5450 with full QE/CI Support - DSDT (Contains HDMI Audio Edit Too) & AGPM included ... 
- XPS 15 9530使用Windows10频繁发生Intel HD Graphics 4600驱动奔溃的一种解决方法
		本人使用XPS 15 9530.集成显卡为Intel HD Graphics 4600.操作系统Windows 10 Pro,使用过程当中经常会发生集成显卡奔溃的问题,错误提示如下: Display ... 
- Radeon HD 7850 vs Radeon R9 270X
		Radeon HD 7850 vs Radeon R9 270X HW compare Intro The Radeon HD 7850 comes with a GPU core speed ... 
- 电影TS、TC、SCR、R5、BD、HD等版本是什么意思
		在很多电影下载网站的影片标题中我们都能看到,比如<刺杀希特勒BD版>.<游龙戏凤TS版>等,这些英文缩写都是什么意思呢?都代表什么画质?以下就是各个版本的具体含义: 1.CAM ... 
- stm32类型cl、vl、xl、ld、md、hd的含义
		- startup_stm32f10x_ld_vl.s: for STM32 Low density Value line devices - startup_stm32f10x_ld.s: for ... 
- 瑞昱Realtek(Realtek HD Audio Driver)音频声卡驱动R2.49 for Win7_Vista
		不管是在高端系列主板上,还是在低端系列主板上,我们都能看到Realtek瑞昱的身影,Realtek HD Audio Driver能够支持所有的Realtek HD Audio音频驱动.Realtek ... 
- cocos2d-x 2.0.3 设置高清模式注意事项(已移除-hd方式)
		猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=304 在cocos2d-x 2. ... 
- %hd %d %ld %u ......
		%d 有符号10进制整数 %ld 长整型 %hd短整型%md,m指定的是输出字段的宽度,默认左补空格, 如果数据的位数小于m,则左端补以空格,若大于m,则 按实际位数输出,如: printf(&quo ... 
- 求刷Kindle Fire HD的方法
		前几天入手了台Amazon Kindle Fire HD 其系统是经过Amazon尝试改造过的Android,用起来很不爽,想刷个CM10之类的,求教程和工具. 
随机推荐
- d3系列2--api攻坚战02
			<html> <head> <style type="text/css"> .area{ fill:steelblue; } </styl ... 
- Ubuntu安装sublime test 3 (Build 3126)
			Ubuntu下 Sublime Text 3 (Build 3143) 存在一些bug........ 满心欢喜地更新后, 又默默换回Build 3126 1. 安装 sudo apt-get upd ... 
- 解决Linux上解压jdk报错gzip: stdin: not in gzip format
			最近在阿里上买了个服务器玩,需要安装jdk,在解压过程中遇到了一些问题,又是一番Google度娘,终于解决了.问题原因让我有点无奈…… 输入 #tar -xvf jdk-8u131-linux-x64 ... 
- js识别不同浏览器
			检測浏览器.注意浏览器推断顺序,主要是基于userAgent做推断. //检測浏览器 var client = function(){ var engine = { ie:0, ... 
- lua学习笔记(七)
			错误处理 assert(exp) error("error message text") pcall安全调用 协同程序 lua没有真正的多线程,都是使用协同程序也实 ... 
- 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
			[COCOS2DX-LUA 脚本开发之一]在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途! 分类: [Cocos2dx Lua 脚本开发 ] 2012-04-1 ... 
- Webpack与Gulp、Grunt区别
			Webpack与Gulp.Grunt没有什么可比性,它可以看作模块打包机,通过分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等 ... 
- oracle中避免sort操作
			1.升序排列 create index ix_table1 on table1 (column1,column2); select column1,column2 from table1 order ... 
- (总结)RHEL/CentOS 7.x的几点新改变
			一.CentOS的Services使用了systemd来代替sysvinit管理 1.systemd的服务管理程序: systemctl是主要的工具,它融合之前service和chkconfig的功能 ... 
- WebApi 中使用 Token
			1.登陆的时候根据用户信息生成Token var token = FormsAuthentication.Encrypt( new FormsAuthenticationTicket( , " ... 
