Cod sursa(job #2727587)

Utilizator Iulia25Hosu Iulia Iulia25 Data 22 martie 2021 10:00:46
Problema Barman Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream cin ("barman.in");
ofstream cout ("barman.out");

int n, r = 2e9, p;
int val[605];
pair <int, int> a[605];

int main()  {
    cin >> n;
    for (int i = 1; i <= n; ++i)    {
        cin >> a[i].first;
        a[i].second = i;
        val[i] = a[i].first;
    }
    sort (a + 1, a + n + 1);
    for (int start = 1; start <= n; ++start)    {
        int ans = 0;
        for (int i = 1; i <= n; ++i)    {
            p = (i + start - 1);
            if (p > n)
                p -= n;
            ans += abs(p - a[i].second);
            if (val[p] != a[i].first)
                ans += 20;
        }
        r = min(r, ans);
    }
    cout << r;
    return 0;
}