小雷说,第一次,送两朵花,第二次,送三朵,第三次送的总数是第一次和第二次的乘积,第四次是前两次的乘积......也就是说,第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];
}
分享到:
相关推荐
5. **效率**:由于取余运算通常由硬件直接支持,因此在性能上通常不会成为程序的瓶颈。然而,对于大数据量的计算,优化算法或使用更高效的数据结构仍然很重要。 6. **拓展应用**:在数学和科学计算中,取余运算也有...
当我们处理浮点数时,C++和C#都不会直接支持浮点数的取余或取模操作,但可以通过将浮点数转换为整数来间接实现。然而,这种方法可能会丢失精度,因此在进行这样的计算时需要谨慎。 在实际应用中,`%`运算符常用于...
在C++编程语言中,取整和取余是两种常见的数学运算,它们在处理数值时起着关键作用。本文将详细介绍这两种操作,并提供相应的代码示例。 首先,我们来看取整操作。C++提供了多种方法来进行取整: 1. 直接赋值给...
总的来说,理解和掌握快速求幂和取余对于编程和密码学领域的从业者至关重要,因为它不仅能够提高代码效率,还在许多实际应用中起到关键作用。通过实践和优化,我们可以更好地利用这些技术来解决复杂的问题。
解决PTA题:取余方法(1)7-18 水仙花数
整数的加、减、乘、除、取余操作中,对于减操作,只要看作是将减数改变了符号的加操作即可;乘和整数操作结果的符号只是对两个操作数做异或操作;取余操作的符号取决于被取余数值得符号。
Java 语言程序设计课程设计报告中,设计了一款计算器,使其具有加减乘除取余等基础数学运算功能。该计算器的设计思想基于面向对象编程的原则,使用 Java 语言作为开发平台。 设计思想 在设计计算器时,首先需要...
本视频教程将深入探讨浮点数取余和自增自减这两种特定的操作符。这些概念对于理解和编写高效的Swift代码至关重要。 首先,我们来谈谈浮点数取余运算。在大多数编程语言中,取余运算通常用于整数,例如整数除法后的...
这篇描述提到了一个使用C语言实现的库,专门用于大数的加、减、乘、除和取余运算,并且提供了最小公倍数的功能。这个库包括了`calc.c`源代码文件、`HugeInt.dll`动态链接库、`HugeInt.H`头文件以及`HugeInt.lib`静态...
主要思想是: for(i=2;i(n);i++) { if (n%i==0) { return 0; } else return 1; }
在计算机科学和数学中,取余运算和求模运算都是处理整数除法的重要操作。取余运算(通常用 `%` 符号表示)和求模运算虽然在一些方面相似,但它们在处理负数时有不同的规则。这些运算在编程语言中的实现可能会有所...
在计算机科学和数学中,取余运算和求模运算扮演着重要的角色,特别是在处理整数除法时。本文主要探讨了这两个运算的概念、区别以及在不同编程语言中的表现。 首先,取余运算(通常用 `%` 符号表示)和求模运算的...
longlong取余快速乘
取余运算是指两个整数相除后得到的余数,例如`y % x`表示`y`被`x`除后的余数。 ### 4. 数据类型与变量声明 #### 4.1 基本数据类型 在C++中,基本的数据类型包括: - `int`(整型) - `float`(浮点型) - `char`...
《取模运算与取余运算:数学与编程的交汇》 取模运算和取余运算在计算机科学和数学中扮演着重要角色,虽然两者在概念上有重叠,但在处理负整数时,它们的行为有所不同。取模运算主要应用于计算机领域,而取余运算则...
python 实现 整数翻转-取余
longlong取余快速幂模板
与我的文章配套 输入两个整数,输出商和余数
C语言中的取余运算符(%)是一种二元运算符,它用于计算两个整数相除后的余数。该运算符仅适用于整数类型的操作数,不能用于浮点数,且除数不能为零。取余运算符是C语言基本算术运算符之一,它与加法(+)、减法(-...
在实现水仙花数的判断过程中,涉及到的基本数学运算包括除法、取余和指数运算。这些运算帮助我们分解数字并计算每位数字的幂次和。算法设计上,通过简单的循环和条件判断实现了对水仙花数的有效识别,体现了编程解决...