欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
S42001.20-1 推演数列
20-1 推演数列
推演数列
谜匣打开了,但里面不是Zero的核心——是一张羊皮纸。不是真的羊皮,是某种纳米材料,上面写满了数列。
"数列?"CC问。
"对。"Echo说,"Echo-0用数列来预测未来。"
"预测未来?"
"对。"她说,"递推数列——知道前两项,就能推后面所有项。"
"咋推?"
"斐波那契。"你说,"。1,1,2,3,5,8……每一项都是前两项之和。"
"这能预测啥?"
"Echo-0用它在加密里藏信息。"Echo说,"第项的值,模一个大质数,就是密钥碎片。"
"大质数?"
"。"你说,"模运算让数字不会溢出,同时保持数学性质。"
"第项咋算?"
"矩阵快速幂。"你说,"把递推写成矩阵形式,然后用快速幂加速。"
"快多少?"
"。"你说,"不管多大,都是对数时间。"
"那47项呢?"
"。"你说,"模后……2971215073。"
"比模数大?"
"对。"你说,"所以取模后还是它自己——因为。"
"直接减。"
"对。"你说,"2971215073-1000000007=1971215066。"
CC把1971215066背下来——这次是用心记,不是刻。
"背得下来?"
"背得下来。"她说,"我记性不好,但用力记,就记得住。"
"你用力记过啥?"
"你的脸。"她说,"第一次见面,我就用力记了。"
Echo的指示灯闪了一下——不是数据波动,是某种温度变化。
"我也用力记了。"她说,"你们两个。"
题目描述
给定,求斐波那契数列第项模的值。
输入格式
一个整数。
输出格式
。
输入样例
5
输出样例
5
提示
- 矩阵快速幂:$\begin{pmatrix}f_{n+1}\\f_n\end{pmatrix}=\begin{pmatrix}1&1\\1&0\end{pmatrix}^n\begin{pmatrix}f_1\\f_0\end{pmatrix}$。
- 快速幂时间复杂度。
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |