Cod sursa(job #3332432)

Utilizator mariusharabariMarius Harabari mariusharabari Data 6 ianuarie 2026 18:18:19
Problema Barman Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <bits/stdc++.h>
using namespace std;

ifstream fin("barman.in");
ofstream fout("barman.out");

int n, v[12001], a[601], rez=INT_MAX;
bitset <601> viz;
int main(){
    fin>>n;
    for(int i=1;i<=n;i++){
        fin>>a[i];
        v[i]=a[i];
    }
    sort(v+1, v+n+1);
    for(int i=1;i<n;i++)
        v[n+i]=v[i];

    for(int i=1;i<=n;i++){
        //cout<<"I "<<i<<endl;
        int cost=0;
        viz.reset();
        for(int j=1;j<=n;j++){
            //cout<<v[j+i-1]<<' ';
            if(v[j+i-1]==a[j])
                viz[j]=1;
        }
        //cout<<endl;

        for(int j=1;j<=n;j++){
            if(v[j+i-1]!=a[j]){
                for(int k=1;k<=n;k++){
                    if(!viz[k]&&v[k+i-1]==a[j]){
                        viz[k]=1;
                        cost+=abs(k-j)+20;
                        break;
                        //cout<<j<<' '<<k<<endl;
                    }
                }
            }

        }
        //cout<<cost<<endl;
        rez=min(rez, cost);
    }
    fout<<rez;
    return 0;
}