当前位置: 首页 > 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.hskmm.com/?act=detail&tid=3315

相关文章:

  • 使用 C# 设置 Excel 单元格格式 - 教程
  • grafana部署并使用harbor监控模板
  • 【ARM Cache 及 MMU 系列文章 6.1 -- Cache maintenance 指令及相关寄存器有哪些?】
  • 十八、CPU的控制流:正常控制流和异常控制流
  • 大模型基础|位置编码|RoPE|ALiBi
  • 模仿玩家习惯的简单AI系统:GoCap
  • 浅谈马拉车
  • 成品app直播源码搭建,sql优化原则 - 云豹科技
  • 使用Clang静态分析技术追踪Heartbleed漏洞
  • 十七、异常和中断响应过程的时序图
  • 十六、异常和中断的响应过程
  • 直播平台搭建,浏览器中的事件循环与Node中的事件循环 - 云豹科技
  • Redisson 分布式锁的实现原理 - 教程
  • 关于前端的一些疑问整理(标签属性值和符号)
  • 深入解析:免费的SSL和付费SSL 证书差异
  • 领嵌iLeadE-588网关AI边缘计算盒子智能安防监控
  • 十五、异常和中断事件的初始检测、识别和处理
  • 十四、异常和中断的分类
  • 思考 | 躺平者的本质和区别
  • ros2--service/服务--接口 - 教程
  • c++
  • LayerMask的使用规范
  • 存在,是终极的神奇。ECT-OS-JiuHuaShan 框架正是这份神奇的自我觉醒、自我阐述与自我捍卫
  • 深入解析:【Unity基础】枚举AudioType各个枚举项对应的音频文件类型
  • 十三、异常和中断的基本概念
  • 【关注可白嫖源码】25046基于SpringBoot的少儿编程管理系统设计与达成
  • 2024-2025第二学期计算机网络助教工作总结
  • 信息搜集、物联网搜索引擎、ARL灯塔系统、Nmap
  • 工具链部署实用技巧 7|模型设计帧率推理时耗时与带宽分析
  • 基于Django的“社区爱心养老管理系统”设计与开发(源码+数据库+文档+PPT) - 实践