藍橋杯 試題 演算法訓練 景點遊覽
阿新 • • 發佈:2020-08-01
資源限制
時間限制:1.0s 記憶體限制:256.0MB
問題描述
小明來到一個景區遊玩,但是他的時間有限,沒辦法逛遍所有的景點,所以他從網上下載了每個景點的評分,他希望能夠使遊覽的景點的評分總和最高,於是他希望你幫他對於N個景點排下序。
輸入格式
輸入的第一行包含一個正整數N,表示N個景點。
第二行有N個正整數,表示每個景點的評分值。
輸出格式
輸出一行,包含N個正整數,表示N個景點的評分從大到小的排列。
樣例輸入
4
3 2 4 1
樣例輸出
4 3 2 1
資料規模和約定
N<=1000,每個景點的評分<=10000
排序問題,且使用簡單的選擇排序和氣泡排序即可通過。
#include<iostream> using namespace std; int main() { int n,a[1000]; cin>>n; for(int i=0;i<n;i++) cin>>a[i]; //選擇排序 for(int i=0;i<n-1;i++) { int index=i; for(int j=i+1;j<n;j++) { if(a[j]>a[index]) index=j; } swap(a[i],a[index]); //C++的交換函式,包含在std中 } /* //氣泡排序 for(int i=0;i<n-1;i++) { for(int j=0;j<n-1-i;j++) { if(a[j]<a[j+1]) { swap(a[j],a[j+1]); } } } */ for(int i=0;i<n-1;i++) cout<<a[i]<<' '; cout<<a[n-1]<<endl; return 0; }