AT_ttpc2023_a.Numerous Elimination
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有 N 名选手,编号为 1,2,…,N,将参加一场比赛。
比赛场地设置了 N 个队列,编号为 0,1,…,N−1。对于第 i (0≤i≤N−1)号队列来说,其中站着的选手表示当前连胜了 i 场。
比赛开始时,所有选手按照 1,2,…,N 的顺序排在第 0 号队列的前面。
比赛按照以下步骤决定每位选手的最终名次:
- 当每个队列中刚好有 1 名选手时,站在队列 i 的选手的最终排名是 N−i。此时比赛结束。
- 在所有当前有至少 2 名选手的队列中,选择编号最小的队列,标记为 l。
- 从队列 l 的最前面取出 2 名选手,让他们进行一场比赛。胜者排到队列 l+1 的队尾,败者排到队列 0 的队尾。
- 返回第 1 步。
请你求出本次比赛一共进行了多少场比赛,并将结果对 998244353 取模后输出。
保证比赛没有平局,且无论每场比赛的结果如何,答案都是唯一确定的。
输入格式
输入通过标准输入给出。
N
输出格式
请输出答案。
输入输出样例
输入#1
3
输出#1
4
输入#2
5
输出#2
26
输入#3
100000
输出#3
538161387
说明/提示
样例解释 1
假设每场比赛中编号较小的选手总是获胜,则比赛流程如下所示:
| 列 0 | 列 1 | 列 2 | 说明 |
|---|---|---|---|
| 1,2,3 | 选手 1 和 2 比赛,1 到列 1,2 到列 0 | ||
| 3,2 | 1 | 选手 3 和 2 比赛,2 到列 1,3 到列 0 | |
| 3 | 1,2 | 选手 1 和 2 比赛,1 到列 2,2 到列 0 | |
| 3,2 | 1 | 选手 3 和 2 比赛,2 到列 1,3 到列 0 | |
| 3 | 2 | 1 | 所有队列都刚好有 1 人,比赛结束 |
一共进行了 4 场比赛,因此输出 4。
数据范围
- N 是整数
- 1≤N≤105
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?