内容简介:问题描述斐波那契数列大家都非常熟悉。它的定义是:f(x) = 1 …. (x=1,2)
问题描述
斐波那契数列大家都非常熟悉。它的定义是:
f(x) = 1 …. (x=1,2)
f(x) = f(x-1) + f(x-2) …. (x>2)
对于给定的整数 n 和 m,我们希望求出:
f(1) + f(2) + … + f(n) 的值。但这个值可能非常大,所以我们把它对 f(m) 取模。
公式如下
但这个数字依然很大,所以需要再对 p 求模。
输入格式
输入为一行用空格分开的整数 n m p (0<n, m, p<10^18)
输出格式
输出为1个整数,表示答案
样例输入
2 3 5
样例输出
0
样例输入
15 11 29
样例输出
25
package prev29; import java.math.BigInteger; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); long n = in.nextLong(); long m = in.nextLong(); BigInteger p = in.nextBigInteger(); in.close(); BigInteger f1 = new BigInteger("1"); BigInteger f2 = new BigInteger("1"); BigInteger fm = new BigInteger("1"); for (long i = 3; i <= m; i++) { fm = f1.add(f2); f1 = f2; f2 = fm; } f1 = new BigInteger("1"); f2 = new BigInteger("1"); BigInteger sum = new BigInteger("2"); BigInteger fn = new BigInteger("0"); for (long i = 3; i <= n; i++) { fn = f1.add(f2); sum = sum.add(fn); f1 = f2; f2 = fn; } System.out.println(sum.mod(fm).mod(p)); } }❤❤点击这里 -> 订阅PAT、蓝桥杯、GPLT天梯赛、LeetCode题解离线版❤❤
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- [Java] 蓝桥杯PREV-5 历届试题 错误票据
- [Java] 蓝桥杯PREV-23 历届试题 数字游戏
- [Java] 蓝桥杯PREV-33 历届试题 兰顿蚂蚁
- [Java] 蓝桥杯PREV-2 历届试题 打印十字图
- [Java] 蓝桥杯PREV-3 历届试题 带分数
- [Java] 蓝桥杯PREV-28 历届试题 地宫取宝
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
大数据系统构建
Nathan Marz、James Warren / 马延辉、向磊、魏东琦 / 机械工业出版社 / 2017-1 / 79.00
随着社交网络、网络分析和智能型电子商务的兴起,传统的数据库系统显然已无法满足海量数据的管理需求。 作为一种新的处理模式,大数据系统应运而生,它使用多台机器并行工作,能够对海量数据进行存储、处理、分析,进而帮助用户从中提取对优化流程、实现高增长率的有用信息,做更为精准有效的决策。 但不可忽略的是,它也引入了大多数开发者并不熟悉的、困扰传统架构的复杂性问题。 本书将教你充分利用集群硬件优势的La......一起来看看 《大数据系统构建》 这本书的介绍吧!