描述
根据学生学号顺序(学号从1开始),输入n名学生的身高(身高无重复),找出其中最高和最矮的同学。按照输入顺序,输出最高与最矮同学之间的所有学生的学号与身高。(最高与最矮不相邻)
输入描述
一行一个正整数n,代表学生人数。(5≤n≤100)
一行n个正整数,代表学生身高h,数字之间使用空格分隔。
(110≤h≤200)
输出描述
多行,每行两个正整数,分别代表学号和其对应的身高,数值之间使用空格分隔。
样例输入 1
8 112 116 160 154 144 111 159 137
样例输出 1
4 154 5 144
样例输入 2
8 136 112 160 133 128 166 157 132
样例输出 2
3 160 4 133 5 128
#include <bits/stdc++.h>
using namespace std;
int main(){
int n,ma=0,mai=0,mii=0,mi=1000,fl=0;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
if(a[i]<mi){
mi=a[i];
mii=i;
}
if(a[i]>ma){
ma=a[i];
mai=i;
}
}if(mai>mii){
for(int i=0;i<n;i++){
if(a[i]==mi)break;
if(fl){
cout<<(i+1)<<' '<<a[i]<<endl;
}if(a[i]==ma)fl=1;
}
}else if(mii>mai){
for(int i=0;i<n;i++){
if(a[i]==ma)break;
if(fl){
cout<<(i+1)<<' '<<a[i]<<endl;
}if(a[i]==mi)fl=1;
}
}
return 0;
}
可不知道为何,
这玩意儿总也不输出。。。
Wrong Answer
运行时间1ms
自测输入
8
112 116 160 154 144 111 159 137预期输出
4 154
5 144实际输出
【空】
求大佬们帮一下吧 T-T