QOJ.ac

QOJ

時間限制: 3.0 s 記憶體限制: 1024 MB 總分: 100 可 Hack ✓

#8982. 厨师拉格朗日

统计

Lagrange 是一位厨师。他提出了一些与食物相关的理论。

在这些理论中,最著名的一个被称为“兼容理论”。具体来说,Lagrange 发明了 $10^6$ 种不同的菜肴。然而,有一对菜肴,即 $X$ 和 $Y$,如果先后品尝(无论顺序如何),会对用餐体验产生负面影响。Lagrange 将这对菜肴称为“不兼容”。

“兼容”的概念也可以扩展到整顿饭。如果一顿饭包含多道按特定顺序供应的菜肴,且其中没有两道连续供应的菜肴是不兼容的,那么这顿饭就是兼容的。

有一天,一位客人要求按顺序供应 $N$ 道菜肴 $a_0, a_1, \dots, a_{N-1}$。由于客人不懂“兼容理论”,所要求的餐点可能是“不兼容”的。

Lagrange 希望调整菜肴的顺序,使这顿饭变得兼容,同时保持调整后的列表与原始列表差异不大。因此,他将“调整步骤”定义为将列表中的一道菜移动到任何其他位置。

你的任务是计算使餐点变得兼容所需的最少调整步骤数,或者确定这是不可能的。

输入格式

第一行包含三个正整数 $N, X, Y$ ($1 \le N \le 5000, 1 \le X, Y \le 10^6, X \neq Y$)。 第二行包含 $N$ 个正整数 $a_0, a_1, \dots, a_{N-1}$ ($1 \le a_i \le 10^6$)。

输出格式

如果无法使餐点变得兼容,输出 -1。否则,输出一个整数,表示使餐点变得兼容所需的最少调整步骤数。

样例

样例输入 1

3 1 2
1 2 3

样例输出 1

1

样例输入 2

3 1 2
1 2 2

样例输出 2

-1

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.