日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

hdu 1872(稳定排序)

發(fā)布時(shí)間:2025/6/15 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hdu 1872(稳定排序) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

穩(wěn)定排序就是相同元素排序后次序不會(huì)發(fā)生改變的排序方法.

冒泡是穩(wěn)定排序.

快一點(diǎn)的歸并也是穩(wěn)定排序.

?

               穩(wěn)定排序

Time Limit: 3000/1000 MS (Java/Others)????Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2766????Accepted Submission(s): 1081


Problem Description 大家都知道,快速排序是不穩(wěn)定的排序方法。
如果對(duì)于數(shù)組中出現(xiàn)的任意a[i],a[j](i<j),其中a[i]==a[j],在進(jìn)行排序以后a[i]一定出現(xiàn)在a[j]之前,則認(rèn)為該排序是穩(wěn)定的。

某高校招生辦得到一份成績(jī)列表,上面記錄了考生名字和考生成績(jī)。并且對(duì)其使用了某排序算法按成績(jī)進(jìn)行遞減排序。現(xiàn)在請(qǐng)你判斷一下該排序算法是否正確,如果正確的話,則判斷該排序算法是否為穩(wěn)定的。

?

Input 本題目包含多組輸入,請(qǐng)?zhí)幚淼轿募Y(jié)束。
對(duì)于每組數(shù)據(jù),第一行有一個(gè)正整數(shù)N(0<N<300),代表成績(jī)列表中的考生數(shù)目。
接下來(lái)有N行,每一行有一個(gè)字符串代表考生名字(長(zhǎng)度不超過(guò)50,僅包含'a'~'z'),和一個(gè)整數(shù)代表考生分?jǐn)?shù)(小于500)。其中名字和成績(jī)用一個(gè)空格隔開。
再接下來(lái)又有N行,是上述列表經(jīng)過(guò)某排序算法以后生成的一個(gè)序列。格式同上。

?

Output 對(duì)于每組數(shù)據(jù),如果算法是正確并且穩(wěn)定的,就在一行里面輸出"Right"。如果算法是正確的但不是穩(wěn)定的,就在一行里面輸出"Not Stable",并且在下面輸出正確穩(wěn)定排序的列表,格式同輸入。如果該算法是錯(cuò)誤的,就在一行里面輸出"Error",并且在下面輸出正確穩(wěn)定排序的列表,格式同輸入。

注意,本題目不考慮該排序算法是錯(cuò)誤的,但結(jié)果是正確的這樣的意外情況。

?

Sample Input 3 aa 10 bb 10 cc 20 cc 20 bb 10 aa 10 3 aa 10 bb 10 cc 20 cc 20 aa 10 bb 10 3 aa 10 bb 10 cc 20 aa 10 bb 10 cc 20

?

Sample Output Not Stable cc 20 aa 10 bb 10 Right Error cc 20 aa 10 bb 10

?

Author linle

?

Source 2008浙大研究生復(fù)試熱身賽(2)——全真模擬

?

Recommend lcy #include <stdio.h> #include <string.h> #include <string> #include <iostream> using namespace std;struct node {char str[100];int key; };node g[300],g1[300];int main() {int n;while(scanf("%d",&n)!=EOF){for(int i=0;i<n;i++){scanf("%s %d",g[i].str,&g[i].key);}for(int i=0;i<n;i++)scanf("%s %d",g1[i].str,&g1[i].key);for(int i=0;i<n;i++)for(int j=i;j>0;j--){if(g[j].key>g[j-1].key) {char tmp[100];strcpy(tmp,g[j-1].str);strcpy(g[j-1].str,g[j].str);strcpy(g[j].str,tmp);int tt;tt=g[j].key;g[j].key=g[j-1].key;g[j-1].key=tt;}}int flag=0;for(int i=0;i<n;i++){if(g1[i].key!=g[i].key){flag=1;break;}}if(flag==1){printf("Error\n");for(int i=0;i<n;i++)printf("%s %d\n",g[i].str,g[i].key);continue;}for(int i=0;i<n;i++){if(strcmp(g1[i].str,g[i].str)!=0){flag=1;break;}}if(flag==1){printf("Not Stable\n");for(int i=0;i<n;i++)printf("%s %d\n",g[i].str,g[i].key);continue;}printf("Right\n");}return 0; }

?

  《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的hdu 1872(稳定排序)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。