problem g: 排序練習
00(難度:5)
description
話說前面的排序太簡單了,
沒有絲毫的挑戰性, 如今給你
n 個整數, 除了要排序之外
, 還要知道每個數原來的位置
.input
輸入資料有多組, 每組資料第一行包含乙個數字 n(
0 < n <= 100
), 代表有
n 個整數
, 第二行緊跟著輸入
n 個數
.output
對於每組輸入,輸出資料有兩行,第一行代表把數從大到小排序後的序列,第二行第
i 個數代表排序後第一行第
i 個數在原陣列中的位置
.如果存在一樣的數
,則在原先陣列中序號比較大的排在序號小的前面
.每兩組相鄰的輸出之間存在乙個空行
.sample input 5
1 2 3 4 5 2
1 1sample output
5 4 3 2 1
5 4 3 2 1
1 1
2 1
hint
對於第一組輸入排序後序列為「5 4 3 2 1」, "5" 在元陣列中第 5 個
, 「4」
原陣列中第 4 個
...以此類推
,最終輸出如樣列所示
; 對於第二組輸入
, 排序後序列為
「1 1」,
由於要求如果存在一樣的數
, 則序號大的優先序號小的
, 所以第 2 個
「1」需要排在在第
1 個
「1」前面
.輸出如樣列所示
.#include
#include
intmain()
for(i=0;i
//第二行第 i 個數代表排序後第一行第 i 個數在原陣列中的位置
for(i=0;i
} }
for(i=0;i
printf("\n");
for(i=0;i
printf("\n");
k++; }
return
0; }
氣泡排序練習
using system using system.collections.generic using system.linq using system.text return list class program double s sort p new sort s p.paixu a for i...
排序專項練習
1.當待排序記錄已經從小到大排序或者已經從大到小排序時,快速排序的執行時間最省 答案 b 2.以下排序中時間複雜度最差的是 答案 b 3.最壞情況下 insert sort,quick sort merge sort 的複雜度分別是多少?答案 b 快排在已排序情況下效率最低!4.設某檔案經內排序後得...
排序練習2
排序練習2 題目 現在班級有 5 個人的名字和分數 huhu 5 分 haha 3 分 xixi 5 分 hengheng 2 分和 gaoshou 8 分 滿分是10分 請編寫一段程式,讓計算機按照分數從高到低,輸出他們的名字。即應該輸出 gao huhu xixi haha hengheng。題...