Header Ad

HackerEarth Let's swap problem solution

In this HackerEarth Let's swap problem solution Y is alone too and has a permutation p1,p2,...,pn of numbers from 1 to n.

Y thinks that a permutation p1,p2,...,pn beautifulness is defined as value of Sigma|Pi - i|, 1<= i <= n.

Y can swap two elements of the permutation at most once, what is the maximum beautifulness that Y can get?

HackerEarth Let's swap problem solution

HackerEarth Let's swap problem solution.

using namespace std;

typedef pair<int, int> ii;
typedef long long ll;

#define int ll

const int N = 1e5+100;

signed main(){
int n;cin >> n;
int ans=0, mnr=n, mxl=-1;
for(int i=0 ; i<n ; i++){
int d;cin >> d;d --;
ans += abs(d - i);
int l=i, r=d;
swap(l, r);
mnr = min(mnr, r);
mxl = max(mxl, l);
if(mxl > mnr)
ans += 2*(mxl-mnr);
cout << ans << "\n";

Post a Comment