问题标题: 酷町堂:3716 山峰高度

0
0
范孝晗
范孝晗
中级守护
中级守护

题目描述 Description

现在有n座山峰,每个山峰都有一个高度hi。现在请计算并输出高度最高的山峰和高度最低的山峰高度之差ans。

输入描述 Input Description

第一行,一个整数n
接下来一行,n个整数,分别表示每个山峰的高度

输出描述 Output Description

一行,两个以空格隔开的整数,分别表示第5矮的山峰高度,以及最高和最低的山峰高度之差

样例输入 Sample Input

 

5
1 2 3 4 5

样例输出 Sample Output

 

5 4

数据范围及提示 Data Size & Hint

n≤20000
80%以上的山峰高度一样,且集中分布在输入的后半部分


0
0
陈则霖
陈则霖
资深光能
资深光能
  • for(int i=1;i<=n-1;i++)
  • {
  • int flag=0;
  • for(int j=1;j<=n-i;j++)
  • {
  • if(a[j]>a[j+1])
  • {
  • swap(a[j],a[j+1]);
  • flag=1;
  • }
  • }
  • if(flag==0)
  • break;
  • }
  • 核心
0
0
0
范子扬
范子扬
高级守护
高级守护

先排序,再把最前面的和最后面的做差,就是答案了

0
0
范子扬
范子扬
高级守护
高级守护

sort(a+1,a+n+1);

ans=a[n]-a[1];

cout<<ans;

范子扬在2018-12-02 12:16:45追加了内容

sort(a+1,a+n+1);

ans=a[n]-a[1];

cout<<a[5]<<' '<<ans;

0
杨子阳
杨子阳
新手守护
新手守护

先排序,再把最前面的和最后面的做差,就是答案了

0
王学庚
王学庚
初级光能
初级光能
cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    sort(a+1,a+n+1);
    cout<<a[5]<<" ";
    cout<<a[n]-a[1];
望采纳 
0
0
0
0
0
0
0
0
0
我要回答