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.

#include<bits/stdc++.h>
using namespace std;

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

#define int ll

const int N = 1e5+100;

signed main(){
ios_base::sync_with_stdio(false);cin.tie(NULL);
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;
if(l>r)
swap(l, r);
mnr = min(mnr, r);
mxl = max(mxl, l);
}
if(mxl > mnr)
ans += 2*(mxl-mnr);
cout << ans << "\n";
}

Post a Comment

0 Comments