#include<cstdio>
#include<cstring>
#include<iostream>
#include<cmath>
#include<string>
#include<algorithm>
using namespace std;
typedef long long ll;
const int M=;
const int N=;
ll n,m,f2,f1,s1,p1;
ll sn,pn,tn;
struct node{
ll g[M][M];
}mat,res;
void matrixMutiple(node &x,node &y,node &z){
//矩阵乘法运算
memset(z.g,,sizeof(z.g));
for(int i = ; i<=N; i++){
for(int j=; j<=N; j++) if(x.g[i][j]){
for(int k=; k<=N; k++){
z.g[i][k]+=x.g[i][j]*y.g[j][k];
if(z.g[i][k]>=m) z.g[i][k]%=m;
}
}
}
}
void matrixI(node &E){
//构造单位矩阵
for(int i=; i<=N; i++){
for(int j=; j<=N; j++) E.g[i][j]=(i==j);
}
}
void matrixMuti(ll k){
//快速幂运算
matrixI(res); node tmp=mat, t;
while(k){
if(k&) {//“&1”判断k的奇偶
matrixMutiple(res,tmp,t); res=t;
}
matrixMutiple(tmp,tmp,t); tmp=t;
k>>=;
}
}
void init(){
//初始化矩阵
memset(mat.g,,sizeof(mat.g));
mat.g[][]=; mat.g[][]=;
mat.g[][]=;
mat.g[][]=; mat.g[][]=;
mat.g[][]=; mat.g[][]=;
f1=f2=s1=; p1=;
}
int main(){
ios::sync_with_stdio(false); //加速cin和cout
while(cin>>n>>m){
init();
ll ans=;
matrixMuti(n-);
sn=(res.g[][]*f2+res.g[][]*f1+res.g[][]*s1+res.g[][]*p1)%m;
pn=(res.g[][]*f2+res.g[][]*f1+res.g[][]*s1+res.g[][]*p1)%m;
tn=(n*sn-pn+m)%m;
cout<<tn<<endl;
}
return ;
}

佳佳的Fibonacci:

时间限制: 1 Sec  内存限制: 128 MB

题目描述

佳佳对数学,尤其数列十分感兴趣,在研究完Fibonacci之后,他创造出许多稀奇古怪的数列。如求S(n)表示Fibonacci数列前n项和对m取模之后的值,即S(n)=(F1+F2+…+Fn) mod m,F1=F2=1。可是这对佳佳来说还是小菜一碟。终于,他找到一个自己解决不了的数列。。。T(n)表示Fibonacci数列前n项变形后的和对m取模之后的值,即T(n)=(F1+2*F2+3*F3+…+n*Fn) mod m,F1=F2=1。

输入

第一行,包含两个整数n和m。1<=n,m<=2^31-1

输出

共1行, T(n)的值。

样例输入

5 5

样例输出

1

【样例解释】

T(5)=(1+2*1+3*2+4*3+5*5)mod 5 = 1

【数据规模】

30%数据1<=n<=1000

60%数据1<=m<=1000

100%数据1<=n,m<=2^31-1

佳佳的Fibonacci的更多相关文章

  1. 一本通1644【例 4】佳佳的 Fibonacci

    1644:[例 4]佳佳的 Fibonacci 时间限制: 1000 ms         内存限制: 524288 KB sol:搞了大概一个多小时什么结果都没,被迫去看题解,感觉自己菜到家了qaq ...

  2. 佳佳的 Fibonacci

    佳佳的 Fibonacci \(f_n=f_{n-1}+f_{n-2},f_1=f_2=1\),求\(f_1+2f_2+3f_3+...+nf_nmod\ m,1≤n,m≤2^{31}-1\). 解 ...

  3. TYVJ P3407 佳佳的魔法照片 Label:语文很重要 语文很重要 语文很重要

    描述 佳佳的魔法照片(mphoto.pas\c\cpp) [题目背景] 佳佳的魔法照片(Magic Photo):如果你看过<哈利•波特>,你就会知道魔法世界里的照片是很神奇的.也许是因为 ...

  4. vijosP1285 佳佳的魔法药水

    vijosP1285 佳佳的魔法药水 链接:https://vijos.org/p/1285 [思路] 图论思想. 很巧妙. 如A+B=C,将AB之间连边,边权为C,用以找相连物品与合成物. 用Dij ...

  5. 【DFS】佳佳的魔法阵

    [vijos1284]佳佳的魔法阵 背景 也许是为了捕捉猎物(捕捉MM?),也许是因为其它原因,总之,佳佳准备设计一个魔法阵.而设计魔法阵涉及到的最关键问题,似乎就是那些带有魔力的宝石的摆放…… 描述 ...

  6. P1875 佳佳的魔法药水

    P1875 佳佳的魔法药水 题目描述 发完了 k 张照片,佳佳却得到了一个坏消息:他的 MM 得病了!佳佳和大家一样焦急 万分!治好 MM 的病只有一种办法,那就是传说中的 0 号药水 ……怎么样才能 ...

  7. vijos:P1285佳佳的魔法药水

    背景 发完了k张照片,佳佳却得到了一个坏消息:他的MM得病了!佳佳和大家一样焦急万分!治好MM的病只有一种办法,那就是传说中的0号药水……怎么样才能得到0号药水呢?你要知道佳佳的家境也不是很好,成本得 ...

  8. 洛谷 P1875 佳佳的魔法药水

    P1875 佳佳的魔法药水 题目描述 发完了 k 张照片,佳佳却得到了一个坏消息:他的 MM 得病了!佳佳和大家一样焦急 万分!治好 MM 的病只有一种办法,那就是传说中的 0 号药水 --怎么样才能 ...

  9. 洛谷—— P1875 佳佳的魔法药水

    https://www.luogu.org/problemnew/show/1875 题目背景 发完了 k 张照片,佳佳却得到了一个坏消息:他的 MM 得病了!佳佳和大家一样焦急 万分!治好 MM 的 ...

随机推荐

  1. React(二)组件

    1.组件概念: 我理解的组件的概念就是复用性,一个组件开发完成后可以重复使用. 2.简单的组件编写 (1)在src中创建一个components的文件夹,里面创建一个header.js的文件 (2)在 ...

  2. 201771010126 王燕《面向对象程序设计(java)》第八周学习总结

    实验六 接口的定义与使用 实验时间 2018-10-18 1.实验目的与要求 (1) 掌握接口定义方法 JAVA中通过interface关键字定义接口: 接口中只能定义public static fi ...

  3. [LeetCode] Chalkboard XOR Game 黑板亦或游戏

    We are given non-negative integers nums[i] which are written on a chalkboard.  Alice and Bob take tu ...

  4. 在循环中如何取input的值和增加点击事件

    {volist name="dianpu" id="dianpu"} <input style="border: none;" rea ...

  5. 学习java编程思想 第一章 对象导论

    一.面向对象的五个基本特性: 1.万物皆为对象.将对象视为奇特的变量,他可以存储数据,还可以要求它在自身上执行操作. 2.程序是对象的合集,他们通过发送消息告诉彼此所要做的. 3.每个对象都有自己的由 ...

  6. java.text.DateFormat 线程不安全问题

    java.text下的 DateFormat 是线程不安全的: 建议1: 1.使用threadLocal包装DateFormat(太复杂,不推荐) 2.使用org.apache.commons.lan ...

  7. Ultimate Guide to WeChat for Business 2019

    Ultimate Guide to WeChat for Business 2019 By Iaroslav Kudritskiy (source :https://rocketbots.io/blo ...

  8. Autofac之类型注册

    本次主要学习一下Autofac中实现类型注册的几种方式,这里并不打算一开始就从基于接口开发的服务关联切入,而是先从一个简单的类型注册来学起,虽然实际开发中可能不会这么做,但是个人感觉从这里学起理解能能 ...

  9. webToImage (网页转图片)模块试用分享

    模块介绍: 本模块封装了把 webview 转换成图片的功能.调用本模块的transImage接口,可把当前 webview显示的内容转换成一张图片.注意,本模块只能把当前的webview页面转换为图 ...

  10. python基础2 数据类型、数据拼接、数据转换

    一.数据类型 1.字符串 字符串英文string,简写str,只要是被[单/双/三引号]这层皮括起来的内容,不论那个内容是中文.英文.数字甚至火星文.只要是被括起来的,就表示是字符串类型 如:prin ...