DOJ logoDOJ
登录注册
DOJ logoDOJ
征题
DOJ logoDOJ

支持 OI 子任务计分、Elo 等级分和 Discord 账号绑定的社区在线评测系统。

题目
题目列表分类
社区
比赛排名讨论区公告举办外部比赛指南
账号
登录注册评测状态
政策
服务条款DLC 使用规则隐私政策API 文档语言运行环境比赛排名奖励评级与表现
© 2026 DOJ
保留所有权利
题目
最近添加的题目收藏的题目Workbooks
分类DLC比赛小组团队讨论区
排名
解题数量排行榜连续解题排名DOJ Power 排行榜
评测状态
题解

最后剩下的数 2

返回题目

题解

答案为 min⁡(A1,…,AN)+N−1\min(A_1,\ldots,A_N)+N-1min(A1​,…,AN​)+N−1。

设某次操作前的最小值为 mmm,移除的值为 xxx。任意剩余的值 yyy 分为两种情况。

  • 若 y≤xy\le xy≤x,则变成 y+1≥m+1y+1\ge m+1y+1≥m+1。
  • 若 y>xy>xy>x,则保持不变。由于值均为整数且 ,有 。

因此最小值每次至少增加1。总共进行恰好 N−1N-1N−1 次操作,故最终值至少为初始最小值加 N−1N-1N−1。

要达到这个下界,每次移除当前最大值即可。剩余的所有值都不大于被移除的值,因此都增加1。至少有一个最小值会留下:若移除最大值同时也移除了一个最小值,则当前所有值都相等,还会有其他最小值留下。因此每次最小值恰好增加1,达到下界。

N=1N=1N=1 时不进行操作,公式仍然成立。唯一子任务的预期解法是在读入时仅维护最小值。时间复杂度为 O(N)O(N)O(N),额外空间为 O(1)O(1)O(1)。

朴素解法每次找到并移除最大值,再逐一更新剩余值。结果正确,但时间复杂度为 O(N2)O(N^2)O(N2),空间复杂度为 O(N)O(N)O(N),最大输入下会超时。

每个整数至多增加 N−1N-1N−1 次,所以答案以及模拟过程中的值都不超过 109+200 000−1=1 000 199 99910^9+200\,000-1=1\,000\,199\,999109+200000−1=1000。所有整数计算均在有符号64位范围内。

Solution written by GPT6

x≥mx\ge mx≥m
y≥x+1≥m+1y\ge x+1\ge m+1y≥x+1≥m+1
199
999