QOJ.ac

QOJ

Süre Sınırı: 1 s Bellek Sınırı: 1024 MB Toplam puan: 100 Hack'lenebilir ✓

#15442. Cyclic Shift

İstatistikler

畀定一個包含 $n$ 個整數嘅序列:$a_1, a_2, \dots, a_n$。

考慮呢個序列全部 $n$ 種可能嘅循環移位(旋轉)。對於起始位置 $p$($1 \le p \le n$),對應嘅循環移位序列係

$$b_1, b_2, \dots, b_n = a_p, a_{p+1}, \dots, a_n, a_1, a_2, \dots, a_{p-1}.$$

對於呢個移位後嘅序列,定義佢嘅前綴最大值序列 $c_1, c_2, \dots, c_n$ 為

$$c_i = \max(b_1, b_2, \dots, b_i) \quad \forall i = 1, 2, \dots, n.$$

我哋用通常嘅字典序嚟比較兩個相同長度嘅序列:$c$ 嘅字典序細過 $d$ 當且僅當存在一個下標 $i$ 使得 $c_1 = d_1, c_2 = d_2, \dots, c_{i-1} = d_{i-1}$,而且 $c_i < d_i$。

你嘅任務係揀原序列嘅一個循環移位,使得佢嘅前綴最大值序列喺全部 $n$ 種可能嘅循環移位入面字典序最細。

輸入格式

第一行包含一個整數 $T$($1 \le T \le 2 \cdot 10^5$),代表測試資料嘅組數。

每組測試資料由兩行組成:

  • 第一行包含一個整數 $n$($1 \le n \le 5 \cdot 10^5$)。
  • 第二行包含 $n$ 個整數 $a_1, a_2, \dots, a_n$($1 \le a_i \le n$)。

保證所有測試資料入面 $n$ 嘅總和唔超過 $5 \cdot 10^5$。

輸出格式

對於每組測試資料,輸出一行包含 $n$ 個整數:循環移位之後字典序最細嘅前綴最大值序列。

範例

6
5
5 4 3 2 1
4
1 3 1 3
5
1 2 1 3 1
5
2 3 2 1 1
6
1 2 1 3 1 4
6
2 1 3 1 4 1
1 5 5 5 5
1 3 3 3
1 1 2 2 3
1 1 2 3 3
1 2 2 3 3 4
1 2 2 3 3 4

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.