Pagini recente » Cod sursa (job #1488214) | Cod sursa (job #192146) | Cod sursa (job #1359152) | Cod sursa (job #1609324) | Cod sursa (job #1208733)
#include <fstream>
#include <algorithm>
using namespace std;
#define dim 605
bool used[dim],cam[dim];
int b[dim],a[dim];
int main(){
ifstream f("barman.in");
ofstream g("barman.out");
int n,best=1<<30;
f >> n;
for(int i=1;i<=n;i++){
f >> a[i];
b[i]=a[i];
}
sort(b+1,b+1+n);
for(int i=1;i<=n;i++){
int Sum=0;
for(int j=1;j<=n;j++)
if(a[j]==b[j]) used[j]=1,cam[j]=1;
else used[j]=0,cam[j]=0;
for(int j=1;j<=n;j++){
if(!used[j]){
for(int k=1;k<=n;k++){
if(a[j]==b[k] && !cam[k]){
cam[k]=1;
Sum+=abs(j-k)+20;
break;
}
}
}
}
best=min(Sum,best);
int aux=b[1];
for(int i=1;i<n;i++)
b[i]=b[i+1];
b[n]=aux;
}
g << best << "\n";
}