Problem: 2052A - Adrenaline Rush
Language: c++23 

Code 1:
#include <bits/stdc++.h>
#define INF (int)1e9
#define EPS 1e-9
#define PI 3.1415926535897932384626433832795
#define MOD 1000000007
#define sig signed
#define ll long long int
#define rep(i,s,e) for(ll i=s; i<e; i++)
#define repp(n) for(ll i = 0; i < n; i++)
#define repr(i,s,e) for(ll i=s; i>=e; i--)
#define reppr(n) for(ll i = n-1; i >= 0; i--)
#define pb push_back
#define all(x) x.begin(), x.end()
#define mp(x, y) make_pair(x, y)
using namespace std;

// 1 2 3 

// 3 1 2 

// 2 3 1 

// 1 5 3 2 4 6

// 6 4 2 3 5 1

// 1 2 3 4 5 6 

// 6 1 2 3 4 5 ->5

// 6 4 1 2 3 5 ->3

// 6 4 2 1 3 5 ->1

// 6 4 2 3 1 5 ->1

// 6 4 2 3 5 1->1


// 2 3 1

// 1 2 3

// 1 3 2

void solve(){
    int n;
    cin>>n;
    vector<int> a(n);
   
    vector<int> init(n);
    repp(n) 
    {
      cin>>a[i];
      init[i]=i+1;
    }
     reverse(a.begin(),a.end());
     vector<pair<int,int>> ans;
    //  cout<<"fe";
    // ll ans=0;
    // ans+=(n*1LL*(n-1))/2;
    // 1 3 2
    repp(n)
    {
      int val=a[i];
      int ind=-1;
      rep(j,i,n)
      {
        if(init[j]==val)
        {
          ind=j;
          break;
        }
      }
      for(int k=ind;k>i;k--)
      {
        ans.push_back({init[k],init[k-1]});
        swap(init[k-1],init[k]);
      }
    }
    for(int i=0;i<n;i++)
    {
      for(int k=n-1;k>i;k--)
      {
        ans.push_back({init[k],init[k-1]});
        swap(init[k-1],init[k]);
      }
    }
    cout<<ans.size()<<"\n";
    for(auto el:ans)
    {
      cout<<el.first<<" "<<el.second<<"\n";
    }
}

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    ll t = 1;
    // cin >> t;

    while(t--){
        solve();
    }

    return 0;
}

Code 2:
#include <bits/stdc++.h>
#define INF (int)1e9
#define EPS 1e-9
#define PI 3.1415926535897932384626433832795
#define MOD 1000000007
#define sig signed
#define ll long long int
#define rep(i,s,e) for(ll i=s; i<e; i++)
#define repp(n) for(ll i = 0; i < n; i++)
#define repr(i,s,e) for(ll i=s; i>=e; i--)
#define reppr(n) for(ll i = n-1; i >= 0; i--)
#define pb push_back
#define all(x) x.begin(), x.end()
#define mp(x, y) make_pair(x, y)
using namespace std;

// 1 2 3 

// 3 1 2 

// 2 3 1 

// 1 5 3 2 4 6

// 6 4 2 3 5 1

// 1 2 3 4 5 6 

// 6 1 2 3 4 5 ->5

// 6 4 1 2 3 5 ->3

// 6 4 2 1 3 5 ->1

// 6 4 2 3 1 5 ->1

// 6 4 2 3 5 1->1


// 2 3 1

// 1 2 3

// 1 3 2

void solve(){
    int n;
    cin>>n;
    vector<int> a(n);
   
    vector<int> init(n);
    repp(n) 
    {
      cin>>a[i];
      init[i]=i+1;
    }
     reverse(a.begin(),a.end());
     vector<pair<int,int>> ans;
    //  cout<<"fe";
    // ll ans=0;
    // ans+=(n*1LL*(n-1))/2;
    repp(n)
    {
      int val=a[i];
      int ind=-1;
      rep(j,i,n)
      {
        if(init[j]==val)
        {
          ind=j;
          break;
        }
      }
      for(int k=ind;k>i;k--)
      {
        ans.push_back({init[k-1],init[k]});
        swap(init[k-1],init[k]);
      }

    }
    for(int i=0;i<n;i++)
    {
      for(int k=n-1;k>i;k--)
      {
        ans.push_back({init[k-1],init[k]});
        swap(init[k-1],init[k]);
      }
    }
    cout<<ans.size()<<"\n";
    for(auto el:ans)
    {
      cout<<el.first<<" "<<el.second<<"\n";
    }
}

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    ll t = 1;
    // cin >> t;

    while(t--){
        solve();
    }

    return 0;
}

Answer: 1