1470 數列處理

自為風月馬前卒發表於2017-03-20

個人部落格:doubleq.win

1470 數列處理

 

 時間限制: 1 s
 空間限制: 1000 KB
 題目等級 : 青銅 Bronze
 
 
 
題目描述 Description

輸入一列整數,輸出它們的總和、最大值、最小值、並從大到小輸出。

輸入描述 Input Description

第1行:一個整數N表示總共有幾個整數要處理

第2行:N個整數

輸出描述 Output Description

第1行:它們的總和

第2行:最大值

第3行:最小值

第3+1行:最大值(此行開始從大到小依次輸出:注有相同的數字時只輸出其中一個)

第3+2行:

........

最後一行:最小值

樣例輸入 Sample Input

樣1:

6

2 5 5 4 9 4

樣2:

4

7 7 7 7

樣例輸出 Sample Output

樣1:

29(//提示:這是總和,)

9(//這是最大的數)

2(//這是最小的數)

9

5

4

2

樣2:

28

7

7

7

資料範圍及提示 Data Size & Hint

從大到小排序輸出時,應注意篩除相同的數字(如果系列中全部數均相同,只需要輸出其中一個即可)

 

 1 #include<iostream>
 2 using namespace std;
 3 int a[10001];
 4 int tot;//
 5 int maxn=-1;
 6 int minn=10000; 
 7 int b[10001];
 8 int main()
 9 {
10     int n;
11     cin>>n;
12     for(int i=1;i<=n;i++)
13     {
14         cin>>a[i];
15         tot=tot+a[i];
16         if(a[i]>maxn)
17         maxn=a[i];
18         if(a[i]<minn)
19         minn=a[i];
20         b[a[i]]++;
21     }
22     cout<<tot<<endl;
23     cout<<maxn<<endl;
24     cout<<minn<<endl;
25     for(int i=maxn;i>=0;i--)
26     {
27         if(b[i]!=0)
28         cout<<i<<endl;
29     }
30     return 0;
31 }

 

相關文章