演算法提高 前10名
阿新 • • 發佈:2018-12-12
問題描述
資料很多,但我們經常只取前幾名,比如奧運只取前3名。現在我們有n個數據,請按從大到小的順序,輸出前10個名資料。
輸入格式
兩行。 第一行一個整數n,表示要對多少個數據 第二行有n個整數,中間用空格分隔。表示n個數據。
輸出格式
一行,按從大到小排列的前10個數據,每個資料之間用一個空格隔開。
樣例輸入
26 54 27 87 16 63 40 40 22 61 6 57 70 0 42 11 50 13 5 56 7 8 86 56 91 68 59
樣例輸出
91 87 86 70 68 63 61 59 57 56
資料規模和約定
10<=n<=200,各個整數不超出整型範圍
#include<algorithm> #include<iostream> using namespace std; int main () { int n, cnt=0; cin >> n; int a[n+5]; for(int i=0; i<n; i++) { cin >> a[i]; } sort(a, a+n); for(int i=n-1; ; i--) { cout << a[i] << " "; cnt++; if(cnt == 10) break; } cout << endl; return 0; }