九度OJ 1167 陣列排序 排序序列的恢復

2021-06-03 01:07:54 字數 743 閱讀 6259

北航的這道考研上機真題大意是:給定乙個序列,輸出該序列的各個元素在排序後的序號。

首先排序肯定是需要的, 但排序後雖然能都得到各個元素的大小標號,但原來的順序也就不知道了。恢復序列的辦法便是新增乙個域,指示排序前的序號,排完序後再按排序前的序號排回來便可。

題目url:

我的ac**,和大家分享一下。

#include#include#includeusing namespace std;

const int max = 10000 + 10;

struct node

;node a[max];

bool com1(node a, node b)

bool com2(node a, node b)

int main()

sort(a, a+n, com1);

int seq = a[0].sorted = 1, flag = a[0].d;

for(int i=1; iif(a[i].d == flag) a[i].sorted = seq;

else

sort(a, a+n, com2);

for(int i=0; iif(i != n-1) printf("%d ", a[i].sorted);

else printf("%d\n", a[i].sorted);

}system("pause");

return 0;

}

九度1167 陣列排序

cpp 日期 2013 1 29 作者 sjf0115 題號 九度1167 題目 陣列排序 結果 ac 題意 總結 include include include typedef struct datadata 排序函式 int cmp const void a,const void b int c...

九度oj 文獻排序

考察點在結構體的使用,用了乙個陣列的複製,同時注意字串的結束符為 0 題目描述 現在你的導師給你了乙個待排序的參考文獻列表,要你排好序給他。文獻列表中每一條文獻記錄只佔一行。排序的規則和string型別字串的比較規則一致 在排序時如果該字串中包含大寫字母,則當作小寫字母處理,保證沒有相同大小的字串,...

九度oj 文獻排序

考察點在結構體的使用,用了乙個陣列的複製,同時注意字串的結束符為 0 題目描述 現在你的導師給你了乙個待排序的參考文獻列表,要你排好序給他。文獻列表中每一條文獻記錄只佔一行。排序的規則和string型別字串的比較規則一致 在排序時如果該字串中包含大寫字母,則當作小寫字母處理,保證沒有相同大小的字串,...