P13725 [GCPC 2024] Jigsaw Present

题目描述

Julia 正在为 James 准备一份礼物。她会从自己拥有的 $n$ 个拼图中选出一些送给他,其中第 $i$ 个拼图($1 \leq i \leq n$)包含 $x_i$ 块拼图,并且难度为 $y_i$(如果拼图非常简单,$y_i$ 可以为负数)。 ![](https://cdn.luogu.com.cn/upload/image_hosting/okr7isdn.png) James 已经非常激动,并且想提前知道自己会收到什么。因此,他动用了一些“犯罪天赋”收集到了关于礼物的信息。具体来说,他设法获得了一条加密消息,内容是他将收到的所有拼图的总难度和总块数。 现在他想知道,是否值得花更多时间去解密这条消息。毕竟,这些信息可能不足以唯一确定他的礼物。由于他对计算机一窍不通,James 向你寻求帮助。请你帮他判断是否值得解密这条消息。如果不能唯一确定礼物,你还需要找出两种不同的礼物,它们对应的加密消息是相同的。

输入格式

输入包含: - 一行一个整数 $n$($2 \leq n \leq 4096$),表示 Julia 拥有的拼图数量。 - 接下来 $n$ 行,每行两个整数 $x_i$ 和 $y_i$($1 \leq x_i \leq 4096$,$|y_i| \leq 4096$),分别表示第 $i$ 个拼图的块数和难度。

输出格式

如果 James 能唯一确定他的礼物,则输出“$\texttt{yes}$”。否则,输出“$\texttt{no}$”,并在接下来的两行中分别描述两份不同的礼物。每份礼物的描述应以一个整数 $k$ 开头,表示拼图数量,后跟 $k$ 个不同的整数,表示拼图的编号。 注意,这两份礼物必须不同,即至少有一个拼图只在其中一份礼物中出现。 如果存在多组拼图组合满足条件,你可以输出任意一组。

说明/提示

在第一个样例中,第一份礼物包含拼图 $2$、$4$ 和 $5$。总块数为 $3 + 1 + 1 = 5$,总难度为 $2 + (-3) + 1 = 0$。第二份礼物包含拼图 $1$ 和 $3$。总块数为 $2 + 3 = 5$,总难度为 $(-1) + 1 = 0$。因此,如果 James 只知道总块数和总难度,他无法确定自己的礼物,所以不值得解密消息。 在第二个样例中,无论 Julia 如何准备礼物,只要 James 知道总块数和总难度,他都能确定自己的礼物,所以值得解密消息。 由 ChatGPT 4.1 翻译