EOJ 2844 排序去重

2022-09-04 05:27:06 字數 1516 閱讀 9511

有 n

個 1到 1000

之間的整數 (1≤n≤100)

,對於其中重複的數字,只保留乙個,把其餘相同的數去掉。然後再按照指定的排序方式把這些數排序。

第 1 行為字母ada表示按照公升序排序,d表示按照降序排序。

第 2 行開始有若干個用乙個空格或換行符分隔的正整數。

相互之間用乙個空格分隔的經去重和排序後的正整數。最後乙個數後沒有空格。

input

a

20 40 32 67 40 20 89 300 400 15

output

15 20 32 40 67 89 300 400
方法多多, 可以用flag陣列記錄取用與否,可以用set,可以用vector後unique_copy

#include #include 

#include

int cmp1(const

void *a,const

void *b)

int cmp2(const

void *a,const

void *b)

intmain()

; scanf(

"%c\n

",&c);

int i=0

,j,k;

while(scanf("

%d",&tmp)!=eof)

}if(c=='

a') qsort(a,i,sizeof(a[0

]),cmp2);

if(c=='

d') qsort(a,i,sizeof(a[0

]),cmp1);

for(j=0;j1;j++) printf("

%d "

,a[j]);

printf(

"%d\n

",a[j]);

return0;

}

#include #include 

#include

using

namespace

std;

bool cmp(const

int a,const

int b)

intmain()

1 #include 2 #include 3 #include 4

bool cmp(int i,int

j)5 67

using

namespace

std;89

intmain ()

1019

sort(v.begin(),v.end(),cmp);

2021

if(c=='a'

)2230}

31if(c=='d'

)3240}

4142

return0;

43 }

09 排序1 排序

09 排序1 排序 25 分 給定n 個 長整型範圍內的 整數,要求輸出從小到大排序後的結果。本題旨在測試各種不同的排序演算法在各種資料情況下的表現。各組測試資料特點如下 include include includeusing namespace std const int cutoff 1000...

09 排序1 排序

n個 長整型範圍內的 整數,要求輸出從小到大排序後的結果。資料2 11個不相同的整數,測試基本正確性 資料3 10 3個隨機整數 資料4 10 4個隨機整數 資料5 10 5個隨機整數 資料6 10 5個順序整數 資料7 10 5個逆序整數 資料8 10 5個基本有序的整數 資料9 10 5個隨機正...

09 排序1 排序

本題旨在測試各種不同的排序演算法在各種資料情況下的表現。各組測試資料特點如下 資料1 只有1個元素 資料2 11個不相同的整數,測試基本正確性 資料3 103個隨機整數 資料4 104個隨機整數 資料5 105個隨機整數 資料6 105個順序整數 資料7 105個逆序整數 資料8 105個基本有序的...