氣泡排序法的核心是「每次找相鄰的兩個數字交換」,實作方式有許多種變形,可以由前往後比較或是由後往前比較。但是針對同樣的序列,不管使用哪一種氣泡排序法,最後得出的交換的次數都是一樣的,我們稱這個交換的次數為「反序數」。
請你寫一支程式將輸入的數列從大排到小,並計算出反序數(也就是交換的次數)。
第一行輸入一個整數 $n$ ($3 \le n \le 1000$)。
第二行輸入 $n$ 個正整數,用空白隔開,所有數字不超過 $10000$。
第一行輸出反序數。
第二行輸出從大排到小的數列,數字間以空排隔開。
5 50 80 60 70 90
8 90 80 70 60 50
5 50 90 80 70 60
4 90 80 70 60 50
ID | User | Problem | Subject | Hit | Post Date |
沒有發現任何「解題報告」 |