題目傳送門:hdu-1872
problem description
大家都知道,快速排序是不穩定的排序方法。
如果對於陣列中出現的任意a[i],aj,其中a[i]==a[j],在進行排序以後a[i]一定出現在a[j]之前,則認為該排序是穩定的。
某高校招生辦得到乙份成績列表,上面記錄了考生名字和考生成績。並且對其使用了某排序演算法按成績進行遞減排序。現在請你判斷一下該排序演算法是否正確,如果正確的話,則判斷該排序演算法是否為穩定的。
input
本題目包含多組輸入,請處理到檔案結束。
對於每組資料,第一行有乙個正整數n(0
#include
#include
#include
#include
#include
using
namespace
std;
struct stu
stu[520],dent[520];
int n;
int cmp(stu a,stu b)//從大到小排序。
int getnum(string &na)
int main()
for(int i=0; icin>>dent[i].name>>dent[i].score;
dent[i].num=getnum(dent[i].name);
}sort(stu,stu+n,cmp);
bool ok1=true,ok2=true;
for(int i=0; iif(stu[i].score!=dent[i].score)
}for(int i=0; iif(stu[i].num!=dent[i].num)
}if(ok1&&ok2)
cout
<<"right"
HDU 1872 穩定排序
problem description 大家都知道,快速排序是不穩定的排序方法。如果對於陣列中出現的任意a i a j i input 本題目包含多組輸入,請處理到檔案結束。對於每組資料,第一行有乙個正整數n 0 output 對於每組資料,如果演算法是正確並且穩定的,就在一行裡面輸出 right ...
穩定排序 HDU 1872
大家都知道,快速排序是不穩定的排序方法。如果對於陣列中出現的任意a i aj,其中a i a j 在進行排序以後a i 一定出現在a j 之前,則認為該排序是穩定的。某高校招生辦得到乙份成績列表,上面記錄了考生名字和考生成績。並且對其使用了某排序演算法按成績進行遞減排序。現在請你判斷一下該排序演算法...
HDU 1872 穩定排序
大家都知道,快速排序是不穩定的排序方法。如果對於陣列中出現的任意a ii,aj j ii i aj j,在進行排序以後ai i一定出現在aj j之前,則認為該排序是穩定的。某高校招生辦得到乙份成績列表,上面記錄了考生名字和考生成績。並且對其使用了某排序演算法按成績進行遞減排序。現在請你判斷一下該排序...