Problem: 2063B - Subsequence Update
Language: C++17 (GCC 7-32)

Previous submission (verdict: Wrong answer on test 2):
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int n,l,r;
        cin>>n>>l>>r;
        vector<int>a(n);
        for(auto &x:a)
            cin>>x;
        long long sum=0;
        for(int i=l-1;i<=r-1;i++)
        {
            sum+=a[i];
        }
        if(r<n && l>1)
        {
            sort(a.begin()+l-1,a.begin()+r-1);
            sort(a.begin(),a.begin()+l-2);
            sort(a.begin()+r,a.end());
            long long lsum=sum,rsum=sum;
            int xl=r,yl=r-1;
            while(a[xl]<a[yl] && xl<n && yl>=0)
            {
                lsum=lsum-a[yl]+a[xl];
                xl++;
                yl--;
            }
            int xr=0,yr=r-1;
            while(a[xr]<a[yr] && xr<l-1 && yr>=l-1)
            {
                rsum=rsum-a[yr]+a[xr];
                xr++;
                yr--;
            }
            sum=min(lsum,rsum);
            cout<<sum;
        }
        else if(l==1 && r<n)
        {
            sort(a.begin()+l-1,a.begin()+r-1);
            sort(a.begin()+r,a.end());
            int x=r,y=r-1;
            while(a[x]<a[y] && x<n && y>=0)
            {
                sum=sum-a[y]+a[x];
                x++;
                y--;
            }
            cout<<sum;
        }
        else if(r==n && l>1)
        {
            sort(a.begin()+l-1,a.begin()+r-1);
            sort(a.begin(),a.begin()+l-2);
            // for(auto &o:a)
            //     cout<<o<<" ";
            // cout<<"\n";
            // cout<<sum;
            int x=0,y=r-1;
            while(a[x]<a[y] && x<l-1 &&y >=l-1)
            {
                sum=sum-a[y]+a[x];
                x++;
                y--;
            }
            cout<<sum;
        }
        else
        {
            cout<<sum;
        }
        cout<<"\n";
    }
}

Submission (verdict: Wrong answer on test 2):
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int n,l,r;
        cin>>n>>l>>r;
        vector<long long>a(n);
        for(auto &x:a)
            cin>>x;
        long long sum=0;
        for(int i=l-1;i<=r-1;i++)
        {
            sum+=a[i];
        }
        if(r<n && l>1)
        {
            sort(a.begin()+l-1,a.begin()+r-1);
            sort(a.begin(),a.begin()+l-2);
            sort(a.begin()+r,a.end());
            long long lsum=sum,rsum=sum;
            int xl=r,yl=r-1;
            while(a[xl]<a[yl] && xl<n && yl>=0)
            {
                lsum=lsum-a[yl]+a[xl];
                xl++;
                yl--;
            }
            int xr=0,yr=r-1;
            while(a[xr]<a[yr] && xr<l-1 && yr>=l-1)
            {
                rsum=rsum-a[yr]+a[xr];
                xr++;
                yr--;
            }
            sum=min(lsum,rsum);
            cout<<sum;
        }
        else if(l==1 && r<n)
        {
            sort(a.begin()+l-1,a.begin()+r-1);
            sort(a.begin()+r,a.end());
            int x=r,y=r-1;
            while(a[x]<a[y] && x<n && y>=0)
            {
                sum=sum-a[y]+a[x];
                x++;
                y--;
            }
            cout<<sum;
        }
        else if(r==n && l>1)
        {
            sort(a.begin()+l-1,a.begin()+r-1);
            sort(a.begin(),a.begin()+l-2);
            // for(auto &o:a)
            //     cout<<o<<" ";
            // cout<<"\n";
            // cout<<sum;
            int x=0,y=r-1;
            while(a[x]<a[y] && x<l-1 &&y >=l-1)
            {
                sum=sum-a[y]+a[x];
                x++;
                y--;
            }
            cout<<sum;
        }
        else
        {
            cout<<sum;
        }
        cout<<"\n";
    }
}