#icpc2013autumna. [icpc2013autumn_a]Broken Audio Signal
[icpc2013autumn_a]Broken Audio Signal
问题描述
Nathan O. Davis 是集成系统部门的学生。
今天课堂上的议程是音频信号处理。 Nathan 被给出了很多作业。其中一项作业是编写一个程序来处理音频信号。他将给定的音频信号复制到了 USB 存储器中,并带回了家。
当他开始做作业时,不幸的是,他把 USB 存储器掉在了地上。他检查了 USB 存储器的内容,发现音频信号数据损坏了。
下面是他复制的音频信号的几个特点。
-
音频信号是一个由 N 个样本组成的序列。
-
音频信号中的每个样本从1到N编号,并用整数值表示。
-
奇数编号样本的值严格小于其相邻样本的值。
-
偶数编号样本的值严格大于其相邻样本的值。
他非常慌张地向你求助。你试图从他的 USB 存储器中恢复音频信号,但是一些音频信号的样本已经损坏,无法恢复。幸运的是,你从元数据中找到所有损坏样本具有相同的整数值。
你的任务是编写一个程序,该程序接受从他的 USB 存储器中提取出来的损坏音频信号作为输入,以判断音频信号是否可以唯一地恢复。
输入
输入由多个数据集组成。每个数据集的格式如下所示。
...
每个数据集的第一行由一个整数 组成。 表示给定音频信号中的样本数量。每个数据集的第二行由 个用空格分隔的值组成。第 个值 可能为字符 x
或者介于 和 之间的整数(包括边界值)。它表示损坏音频信号的第 个样本。如果 是字符 x
,则表示音频信号中的第 个样本损坏了。否则,它表示第 个样本的值。
输入以单独的 表示结束。该行不包含在数据集中。
你可以假设数据集的数量不超过 。
输出
对于每个数据集,如果可以唯一地恢复原始音频信号,则在一行中输出损坏样本的值。如果存在多个可能的值,则输出 ambiguous
。如果不存在可能的值,则输出 none
。
样例输入
5
1 x 2 4 x
2
x x
2
1 2
2
2 1
2
1000000000 x
4
x 2 1 x
0
样例输出
3
none
ambiguous
none
ambiguous
none