SP14830 CFATHER - The Codefather

题目描述

计算机科学界的一位大佬,代号“代码教父”,掌握了这门计算机科学课程的成绩单。他有权力将一个学生的分数转移给另一个学生。 这位代码教父的女儿即将步入婚姻殿堂,而未来的女婿也在选修这门课程。因为在这门课中只有分数最高的人能得到满分,即100%,所以为了确保自己的准女婿分数高于其他所有人,代码教父计划进行一些分数转移。考虑到事情的敏感性,他做事向来小心谨慎,因此他想遵循以下原则来操作: 1. 他的准女婿不会参与任何的分数转移。 2. 对任意一对学生,最多只会进行一次分数转移,这次转移可以是任意分数。 3. 每个学生只能在分数转移中扮演一次角色,要么是转出分数,要么是接受分数,不能同时参与两种转移(当然也可以不参与)。 4. 完成所有分数转移后,没有学生的分数会变成负数。 这门课程的学生人数为 $N$($1 \leq N \leq 5000$),每个学生有一个从 $1$ 到 $N$ 的唯一学号。学生 $i$ 起初有 $P_i$($1 \leq P_i \leq 10^6$)分。代码教父的准女婿是学号为 $1$ 的学生。 代码教父即便权势滔天,但也怕引起不必要的关注,所以他想确保通过调整的最大单次分数转移尽可能小,同时还得让他的准女婿稳保第一。

输入格式

第一行:一个整数 $N$,表示学生人数。 接下来 $N$ 行:每行一个整数 $P_i$,表示学号为 $i$ 的学生的初始分数。

输出格式

如果代码教父能够遵循这些规则,使他的准女婿的分数高于所有其他学生,则输出最大单次分数转移的最小可能值。 如果无法做到,则输出“impossible”。 **本翻译由 AI 自动生成**