q183. 3. 重組問題
標籤 :
通過比率 : 20人/90人 ( 22% ) [非即時]
評分方式:
Tolerant

最近更新 : 2025-01-06 08:20

內容

對於一個長度為 $n$ 的陣列 $a_1, a_2, \cdots, a_n$,已知 $a_1$ 為 $0$,定義 $\Delta$ 為陣列中任兩個數字的絕對值差所組成的一群數字。給定 $\Delta$ 的內容,輸出可以生成該 $\Delta$ 的最小與最大字典序陣列。

舉例來說,如果 $n = 3$ 且 $\Delta = (3, 4, 7)$,距離最大的是 $7$,因為最大距離必定是在最小與最大兩數之間,我們可以推論原序列的最大的數字是 $7$。接著,目前已知原序列有 $(0, 7)$,而距離序列扣除 $7$ 之後剩下 $(3, 4)$,我們要決定中間點的位置。此時最大的距離是 $4$,這個距離必然是該未知點與「最小的0」或者與「最大的7」之間的距離,所以這個點可能是 $4$ 或者 $3$,在檢驗距離序列後,發現兩者皆可能,所以原序列可能是 $(0, 3, 7)$ 或者 $(0, 4, 7)$,其中字典序最小的是 $(0, 3, 7)$,最大的是 $(0, 4, 7)$。

輸入說明

第一行輸入一個正整數 $n (1 \le n \le 25)$,接下來一行有 $\frac{n \times (n - 1)}{2}$ 個正整數。

(30 分): $n \le 6$
(70 分): 無限制

輸出說明

第一行輸出能生成出該 $\Delta$ 的最小字典序的陣列,第二行輸出能生成出該 $\Delta$ 的最大字典序的陣列。

範例輸入 #1
3
3 4 7
範例輸出 #1
0 3 7
0 4 7
範例輸入 #2
5
1 2 3 3 5 5 6 8 10 11
範例輸出 #2
0 1 3 6 11
0 5 8 10 11
測資資訊:
記憶體限制: 256 MB
公開 測資點#0 (5%): 1.0s , <1K
公開 測資點#1 (5%): 1.0s , <1K
公開 測資點#2 (5%): 1.0s , <1K
公開 測資點#3 (5%): 1.0s , <1K
公開 測資點#4 (5%): 1.0s , <1K
公開 測資點#5 (5%): 1.0s , <1K
公開 測資點#6 (5%): 1.0s , <1K
公開 測資點#7 (5%): 1.0s , <1K
公開 測資點#8 (5%): 1.0s , <1K
公開 測資點#9 (5%): 1.0s , <1K
公開 測資點#10 (5%): 1.0s , <1K
公開 測資點#11 (5%): 1.0s , <1K
公開 測資點#12 (5%): 1.0s , <1K
公開 測資點#13 (5%): 1.0s , <1K
公開 測資點#14 (5%): 1.0s , <1K
公開 測資點#15 (5%): 1.0s , <1K
公開 測資點#16 (5%): 1.0s , <1K
公開 測資點#17 (5%): 1.0s , <1K
公開 測資點#18 (5%): 1.0s , <1K
公開 測資點#19 (5%): 1.0s , <1K
提示 :
標籤:
出處:
2025年1月APCS [管理者: algo.seacow@ ... (演算法海牛) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
45076 ericshen1955 ... (暴力又被TLE) q183
379 2025-01-05 22:26