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

[模拟赛] 过关(pass)

前言:

我做不出 \(T1\) 我活鸡蛋。/kk

题目描述:

\(n+1\) 关卡,有一个机器人从关卡 \(1\) 开始闯关,每个关卡里有一个陷阱。机器人没有第 \(i\) 关的经验时会回到第 \(pi\) 关重新闯一遍,并获得了这一关的经验。

有经验时机器人会直接到达下一关。由于机器人太笨了,所以通过一关后他会认为这一关的经验没用了,从而忘掉它。

请你算出机器人需要多少次才能到达终点?

解题思路:

设计状态 \(f_{i}\) 表示通过关卡 \(i\) 所需要的步数,那么从 \(i-1\)\(i\) 所经过的步骤应该是 \(i-1 \rightarrow i \rightarrow p_{i} \rightarrow i-1 \rightarrow i\)。所以转移应为 \(f_{i}=f_{i-1}+1+(f_{i-1}-f_{a_{i}}+1)\)

代码实现:

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N = 1e6 + 10, mod = 1e9 + 7;
int n, f[N];
signed main(){// freopen("pass.in", "r", stdin);// freopen("pass.out", "w", stdout);cin >> n;for(int i = 1, x; i <= n; i++) cin >> x, f[i] = f[i - 1] + 1 + (f[i - 1] - f[x - 1] + 1 + mod) % mod, f[i] %= mod;cout << f[n] << endl;return 0;
}
http://www.zskr.cn/news/20397.html

相关文章:

  • 2025.10.13
  • 元宇宙的搜索引擎:如何在虚拟世界中查找信息 - 详解
  • 死锁的原因、表现以排查
  • 完整教程:文心大模型4.5:百度推出的新一代原生多模态基础大模型
  • day010
  • 详细介绍:DVWA | XSS 跨站脚本注入
  • 树莓派4B安装WiringPi使用gpio命令
  • 1分钟Get宠物神兽壁纸我家猫被问疯了!
  • 05_Mysql与图片的存储
  • 【Linux】权限 - 实践
  • 【左扬精讲】SRE 别慌!我用 服务器监控指标 讲 KNN 分类算法,从相似度计算到异常识别,都是咱运维人能懂的话(含代码)
  • Java实现业务数据报表的邮件定时发送功能
  • 编写Python自动化脚本,使用Autodesk Fusion辅助Ansys HFSS进行建模
  • 最好的感情
  • 深入解析:D018 vue+django 旅游图谱推荐问答系统|neo4j数据库|智能问答
  • 44. 开发商购买土地
  • 当AI与机器人走进生活:我们即将迎来的日常变革
  • net中使用了垃圾回收机制(GC)功能
  • 2025 超景深三维显微镜厂家 TOP10 推荐:三维成像技术的行业应用标杆​
  • 2025年国内铝单板工厂推荐/国内铝单板厂家/ 市场铝单板推/公司榜荐
  • 一个老码农的掏心窝推荐:微擎,我后悔没早点遇到的开发利器
  • HyperWorks许可证使用报告生成
  • 小程序 拖动节点
  • ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01000: 超出打开游标的最大数
  • 10月13号
  • gitreset、revert
  • 深圳社保_公积金(深圳补交之前月份的公积金)
  • 工业相机传感器CCD的原理及基础知识
  • 20232406 2025-2026-1 《网络与系统攻防技术》实验一实验报告
  • 深入解析:Qt常用控件之QSpinBox