小雷说,第一次,送两朵花,第二次,送三朵,第三次送的总数是第一次和第二次的乘积,第四次是前两次的乘积......也就是说,第N次送花是第N-1次乘上第N-2次的数目。由于两方面的限制,其一花店里没有那么多花,其二运送大量的花会很麻烦。因此送花的数目有个最大值。即如果要送的花如果超过(大于)1000朵,此次送的花就应该对1000取余数。例如,根据上面的法则计算出来的送花数目是1003,那么这次所送的花就应该是3朵。
小琴听了这个主意后,很是赞赏。但是她想知道在她第N次送花给妈妈时,需要送多少花。数学学得不是很好,请求你为她编一个程序,使她知道第N次她应该送多少花。
INPUT:
输入包含多组数据,每组数据独占一行,仅含一个整数N。N等于0的那组数据表示输入结束。
OUTPUT:
对于每组输入的N,输出第N次小琴应送的花数。每组输出独占一行。
Simple Input
2
5
0
Simple Output
3
108
#include<stdio.h>
int a[500000];
void vSum()
{
int i;
a[1]=2;
a[2]=3;
for(i=3;i<=500000;i++)
a[i]=(a[i-1]*a[i-2])%1000;
}
int main()
{
int n,count;
vSum();
while(scanf("%d",&n)!=EOF)
{
count=a[n]%1000;
if(n==0)
break;
else
printf("%d\n",count);
}
return 0;
}
import java.util.*;
public class Flower {
static void vSum()
{
int i;
a[1]=2;
a[2]=3;
for(i=3;i<500000;i++)
{
a[i]=(a[i-1]*a[i-2])%1000;
}
}
public static void main(String args[])
{
Scanner cin=new Scanner(System.in);
int count;
while(cin.hasNext())
{
vSum();
int n=cin.nextInt();
count=a[n]%1000;
if(n==0)
break;
else
System.out.println(count);
}
}
static int[] a=new int[500000];
}
分享到:
相关推荐
C++ 快速计算求幂和取余,代码已测试,可直接使用。。。
C++中运用函数进行取整操作,以及取余操作
c++和C#中,运算符‘%’为取余运算符,而并非取模预算符,在一些应用场景中,如果不加以区分,会产生严重的bug。
java课程设计,计算器加减乘除取余等功能,是课程设计的好资源
主要思想是: for(i=2;i(n);i++) { if (n%i==0) { return 0; } else return 1; }
Swift视频教程:基本操作符系列 浮点数取余和自增自减
操作方法:输入除数和被除数然后点击计算就行了。实用小程序
python字符串⽐较⼤⼩的规则_Python基础教程...加、减、乘、除、取余都是标准操作符,Python当然也有标准 ⽐较操作符,⽐较运算根据运算的真假返回布尔值。例如: >>> 2 > 4 True >>> 2 变量和赋值 和⼤多数⾼级语⾔
longlong取余快速乘
FPGA\Verilog实现开方、平方、取余等数学算法,已经在硬件中实际验证过,计算没有问题,验证硬件是黑金的AX530
python 实现 整数翻转-取余
longlong取余快速幂模板
与我的文章配套 输入两个整数,输出商和余数
对大数(也就是int或者_int64无法存储的数)进行+,-,x,/等运算的库。里面还有一个使用实例程序。
取余的公式: 余数=除数-被除数*商 python的的余数是按照整除(向下取整)得到的商来计算的。 取余问题主要分为 : 正数与正数,负数与负数,正数与负数 ,0 正数与正数 #大数/小数:因为得出的商和整除得出的一致...
用C#实现带有加、减、乘、除和取余操作的计算器源码
C语言取余运算符常见用法.pdf
mod取余 truncate截断 ##### 3、日期函数 now当前系统日期+时间 curdate当前系统日期 curtime当前系统时间 str_to_date 将字符转换成日期 date_format将日期转换成字符 ##### 4、流程控制函数 if 处理双分支...
ASP(VBScript) 中取余用 mod,比如 m = 5 mod 2,结果为 1。 大数注意 m = 4444444444 / 2 n = 4444444444 \ 2 第一句是正确的,第二句运行时会报溢出错误,因为:在整除、取余操作前,数值表达式四舍五入为 Byte、...
js代码-翻转整数(循环取余)