网址:https://ac.nowcoder.com/acm/contest/19306/1006
题目:给你一个1 -> n的排列,现在有一次机会可以交换两个数的位置,求交换后最小值和最大值之间的最大距离是多少?
输入描述:第一行一个数n,之后一行n个数表示这个数列。
输出描述:输出一行一个数表示答案。
代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,x,a,b;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>x;
if(x==1)
a=i;
if(x==n)
b=i;
}
cout<<max(n-a,max(n-b,max(a-1, b-1)))<<endl;
}