AT_bcu30_a.すごろく
入门
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在 Cybozu 员工之间,双六游戏流行起来了。
员工们玩的这款双六有 N+1 个格子,每个格子按照前进的顺序依次编号为 0,1,…,N。起点的编号为 0,终点的编号为 N。
为了熟悉这款双六,你正在一个人练习移动棋子。在实际移动棋子之前,你先决定了 K 回合每回合前进的格数 ai (1≤i≤K),并将棋子放在了起点。
你将按照如下规则实际移动棋子:
第 i 回合 (1≤i≤K) 的操作:
- 如果向前移动 ai 格后仍未到达终点,则前进 ai 格。
- 如果恰好前进 ai 格能到达终点,则前进 ai 格到达终点,并立即结束游戏,不继续后续回合。
- 如果前进少于 ai 格即可到达终点,则先正好前进达到终点,然后后退 ai−x 格(其中 x 为距离终点的剩余格数)。
给定 N、K 以及每回合前进的格数 ai,请输出最终(在 K 回合全部结束,或中途到达终点且结束游戏后)棋子所在的格子编号。
输入格式
输入格式如下:
N K a1 a2 … aK
输出格式
请输出棋子最后停留的格子编号。
输入输出样例
输入#1
10 4 5 7 2 5
输出#1
10
输入#2
10 4 5 7 3 5
输出#2
6
输入#3
20 7 12 5 5 15 2 10 20
输出#3
1
说明/提示
数据范围
- 1≤N≤109
- 1≤K≤1000
- 1≤ai≤N (1≤i≤K)
样例解释 1
一开始棋子放在 0。
- 第 1 回合出 5,棋子移动到 5。
- 第 2 回合出 7,棋子移动到 10,因为还有 2 格可以行动,所以再退回到 8。
- 第 3 回合出 2,棋子移动到 10,此时刚好到达终点,移动结束。
最终棋子停在 10。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?