Two Jewel Pair


Submit solution

Points: 10 (partial)
Time limit: 1.0s
Memory limit: 64M

Authors:
Problem type
Allowed languages
Java 19, Java 8

題目說明

你有一條由 n 顆寶石組成的長鏈,每顆寶石以一個正整數表示其種類。

請觀察這條長鏈中所有相鄰兩顆寶石所形成的連續子序列(子序列長度固定為 2),並計算每一組相鄰寶石在整條長鏈中出現的次數。

你的任務是找出出現次數最多的那些相鄰寶石子序列。若有多組子序列的出現次數並列最多,必須全部輸出。

輸出時,請依照它們在原長鏈中第一次出現的位置排序,起始索引較小者優先。

若所有長度為 2 的子序列都只出現一次,表示沒有任何區段可以被重複切出,請輸出指定字串。


輸入格式

  • 第一行為一個整數 n (2 ≤ n ≤ 100000),代表寶石數量。
  • 第二行為 n 個以空白分隔的正整數,表示寶石種類序列。
  • 寶石種類編號均為 1 ~ 10^9 之間的整數。

輸出格式

若沒有任何子序列出現超過一次,請輸出:

Cannot cut out any segment.

否則,請將所有出現次數最多的子序列依序輸出,每行一組,數字間以一個空白分隔。


Sample Input 1

8
10 20 30 10 20 30 50 50

Sample Output 1

10 20
20 30

說明

相鄰子序列與出現次數如下:

子序列 出現次數 第一次出現位置(索引)
10 20 2 次 0
20 30 2 次 1
30 10 1 次 2
30 50 1 次 5
50 50 1 次 6

其中:

  • 10 20
  • 20 30

出現次數最多(2 次),且 10 20 在索引 0 最早出現,因此先輸出。


Sample Input 2

5
1 2 3 4 5

Sample Output 2

Cannot cut out any segment.

Comments

There are no comments at the moment.