1217: 【入门】换位置

内存限制:16 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:26 解决:12

题目描述

体育课上,有一个班级的同学站成了一队,体育老师请最高的和最矮的两位同学调换一下位置,其余的同学不要动,请编程实现!(假设所有人的高矮都是不一样的)

输入

第一行有一个整数n代表该班级的总人数(n≤100)

第二行有n个数,代表每个人的身高

输出

调换位置后的结果

样例输入 复制

8
8 9 10 4 7 6 5 3

样例输出 复制

8 9 3 4 7 6 5 10

提示

n=int(input())
ls=list(map(int,input().split()))
maxV=max(ls)
minV=min(ls)
j=ls.index(maxV)
k=ls.index(minV)
ls[j],ls[k]=ls[k],ls[j]
print(' '.join(map(str,ls)))

#include<bits/stdc++.h>
using namespace std;
int main(){
	int a[110],i,j,maxx,minx,t,n;
	cin>>n;
	for(i=0;i<n;i++)
		cin>>a[i];
	maxx=0;
	minx=0;
	for(i=1;i<n;i++){
		if(a[i]>a[maxx])
			maxx=i;
		if(a[i]<a[minx])
			minx=i;
	}
	t=a[maxx];
	a[maxx]=a[minx];
	a[minx]=t;
	for(i=0;i<n;i++){
		cout<<a[i]<<" ";
	}
}