a230: 氣泡排序法—反序數量
Tags :
Accepted rate : 17人/17人 ( 100% ) [非即時]
評分方式:
Tolerant

最近更新 : 2023-03-29 11:33

Content

氣泡排序法的核心是「每次找相鄰的兩個數字交換」,實作方式有許多種變形,可以由前往後比較或是由後往前比較。但是針對同樣的序列,不管使用哪一種氣泡排序法,最後得出的交換的次數都是一樣的,我們稱這個交換的次數為「反序數」。

請你寫一支程式將輸入的數列從大排到小,並計算出反序數(也就是交換的次數)。

Input

第一行輸入一個整數 $n$ ($3 \le n \le 1000$)。

第二行輸入 $n$ 個正整數,用空白隔開,所有數字不超過 $10000$。

Output

第一行輸出反序數。

第二行輸出從大排到小的數列,數字間以空排隔開。

Sample Input #1
5
50 80 60 70 90
Sample Output #1
8
90 80 70 60 50
Sample Input #2
5
50 90 80 70 60
Sample Output #2
4
90 80 70 60 50
測資資訊:
記憶體限制: 256 MB
公開 測資點#0 (10%): 1.0s , <1K
公開 測資點#1 (10%): 1.0s , <1K
公開 測資點#2 (10%): 1.0s , <1K
公開 測資點#3 (10%): 1.0s , <1K
公開 測資點#4 (10%): 1.0s , <1K
公開 測資點#5 (10%): 1.0s , <1K
公開 測資點#6 (10%): 1.0s , <1K
公開 測資點#7 (10%): 1.0s , <1K
公開 測資點#8 (10%): 1.0s , <1K
公開 測資點#9 (10%): 1.0s , <1K
Hint :
Tags:
出處:
[管理者:
ktlai (K.我已霸榜.Tlai)
]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」