SP999 MATRIOSH - Generalized Matrioshkas
题目描述
弗拉基米尔多年来一直致力于制作俄罗斯套娃。这种套娃由一系列可打开的玩具组成,每个玩具内部还可以存放一个更小的玩具。这个嵌套过程一直进行,直到最后一个无法打开的玩具。
最近,弗拉基米尔设想了一种更通用的嵌套玩具。这些玩具可以打开,且里面可能包含多个玩具。当你打开表示大小为 $m$ 的玩具,里面的玩具大小分别为 $n_1, n_2, \ldots, n_r$,并且必须满足 $n_1 + n_2 + \ldots + n_r < m$。如果满足这个条件,我们就称玩具 $m$ 直接包含玩具 $n_1, n_2, \ldots, n_r$。注意,若玩具 $n_1, n_2, \ldots, n_r$ 进一步包含其他玩具,这些玩具不算作直接被 $m$ 包含。
弗拉基米尔为此设计了一种表示法来描述这些嵌套玩具如何构成。一个玩具用正整数表示,表示玩具的大小。每个玩具在表示序列中由两个整数 $-k$ 和 $k$ 表示,并且负数总是在正数之前出现。
例如,序列:
\[
-9 -7 -2 2 -3 -2 -1 1 2 3 7 9
\]
表示一个由 1、2(两次使用)、3、7 和 9 组成的广义套娃。在这个序列中,玩具 7 直接包含了玩具 2 和 3。注意,第一个 2 出现在第二个 2 之前,第二个 2 直接包含了玩具 1。不能将第一个 $-2$ 和最后一个 2 配对。
相反,以下序列不符合广义套娃的定义:
\[
-9 -7 -2 2 -3 -1 -2 2 1 3 7 9
\]
因为玩具 2 大于玩具 1,无法嵌套在其中。
\[
-9 -7 -2 2 -3 -2 -1 1 2 3 7 -2 2 9
\]
因为玩具 7 和 2 无法同时放在玩具 9 内部。
输入格式
输入由多行测试用例组成,每行是一个序列,由非零整数组成,其绝对值均小于 $10^7$。
输出格式
按照输入顺序输出,对于每个测试用例,如果它描述了一个广义套娃,输出:
```
:-) Matrioshka!
```
否则,输出:
```
:-( Try again.
```
**本翻译由 AI 自动生成**