P6956 [NEERC 2017] Easy Quest

题目描述

一位年轻的英雄开始了他的英雄生涯。聪明的巫师给他建议了一个简单的第一个任务。在这个任务中,我们的年轻英雄遇到了 $n$ 个魔法生物,按特定顺序排列。为了帮助年轻英雄,巫师给了他一个线索——一个包含 $n$ 个整数 $a_{i}$ 的列表。 如果 $a_{i}$ 是正数,那么第 $i$ 个魔法生物是仁慈的,并给我们的英雄一个类型为 $a_{i}$ 的魔法物品。英雄可以保留多个相同类型的物品。 如果 $a_i$ 是负数,那么第 $i$ 个魔法生物是邪恶的,为了打败它,年轻英雄需要一个类型为 $-a_{i}$ 的魔法物品。所有魔法物品都是易碎的,只能使用一次。 如果 $a_{i}$ 是零,那么第 $i$ 个生物是独角兽。它会给英雄他所要求的任何魔法物品,但只能给一个。 你的任务是帮助年轻英雄完成第一个任务,击败途中所有的敌人,或者说这是不可能的。

输入格式

输入的第一行包含一个整数 $n (1 \le n \le 1000)$。第二行包含 $n$ 个整数 $a_{i} (-1000 \le a_{i} \le 1000)$。

输出格式

如果无法击败所有敌人,则输出字符串 `No`。如果可以,则输出字符串 `Yes`,并在下一行输出英雄在任务中遇到的独角兽时应该请求的物品类型。类型必须是从 $1$ 到 $1000$ 范围内的整数。如果有多种解决方案,输出其中任何一种即可。

说明/提示

时间限制:3 秒,内存限制:512 MB。 spj 提供者:@[shenyouran](\/user\/137367)。 题面翻译由 ChatGPT-4o 提供。