当前位置: 首页 > news >正文

矩阵快速幂

模板题:洛谷p1939

code:

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=5,mod=1e9+7;
int n,siz=3;
struct matrix{LL m[N][N];//构造函数matrix(){memset(m,0,sizeof m);}//重载*运算符matrix operator*(const matrix& B)const{matrix C;for(int i=1;i<=siz;i++)for(int j=1;j<=siz;j++)for(int k=1;k<=siz;k++)C.m[i][j]=(C.m[i][j]+m[i][k]*B.m[k][j])%mod;return C;}
};matrix qpow(matrix A,LL b){matrix RET;RET.m[1][1]=RET.m[2][2]=RET.m[3][3]=1;while(b){if(b&1)RET=RET*A;b>>=1;A=A*A;}return RET;
}int main(){cin.tie(nullptr)->sync_with_stdio(false);matrix A,RET,B;A.m[1][1]=A.m[1][2]=A.m[2][3]=A.m[3][1]=1;B.m[1][1]=B.m[1][2]=B.m[1][3]=1;int T;cin>>T;while(T--){cin>>n;if(n==1||n==2||n==3){cout<<1<<endl;continue;}RET=B*qpow(A,n-3);cout<<RET.m[1][1]<<'\n';}return 0;
}
http://www.wxhsa.cn/company.asp?id=2742

相关文章:

  • 使用 C# 设置 Excel 单元格格式 - 教程
  • grafana部署并使用harbor监控模板
  • 【ARM Cache 及 MMU 系列文章 6.1 -- Cache maintenance 指令及相关寄存器有哪些?】
  • 十八、CPU的控制流:正常控制流和异常控制流
  • 大模型基础|位置编码|RoPE|ALiBi
  • 成品app直播源码搭建,sql优化原则 - 云豹科技
  • 使用Clang静态分析技术追踪Heartbleed漏洞
  • 每日Java并发面试系列(5):基础篇(线程池的核心原理是什么、线程池大小设置为多少更合适、线程池哪几种类型?ThreadLocal为什么会导致内存泄漏?) - 实践
  • 累死你的不是工作,而是工作方式
  • 川土微CA-IF1051S、CA-IF1051VS 支持CAN FD
  • 模仿玩家习惯的简单AI系统:GoCap
  • 浅谈马拉车
  • 十七、异常和中断响应过程的时序图
  • 十六、异常和中断的响应过程
  • 直播平台搭建,浏览器中的事件循环与Node中的事件循环 - 云豹科技
  • Redisson 分布式锁的实现原理 - 教程
  • 关于前端的一些疑问整理(标签属性值和符号)
  • 深入解析:免费的SSL和付费SSL 证书差异
  • 领嵌iLeadE-588网关AI边缘计算盒子智能安防监控
  • 十五、异常和中断事件的初始检测、识别和处理
  • 十四、异常和中断的分类
  • 思考 | 躺平者的本质和区别
  • ros2--service/服务--接口 - 教程
  • c++
  • LayerMask的使用规范
  • 存在,是终极的神奇。ECT-OS-JiuHuaShan 框架正是这份神奇的自我觉醒、自我阐述与自我捍卫
  • 深入解析:【Unity基础】枚举AudioType各个枚举项对应的音频文件类型
  • 十三、异常和中断的基本概念
  • 【关注可白嫖源码】25046基于SpringBoot的少儿编程管理系统设计与达成
  • 2024-2025第二学期计算机网络助教工作总结