#include<stdio.h>
int n,N,i,j,p,q,t,T,s,S,a[51];
int main()
{
for(i=1;i<=N;i++)
{
S=s=0;
for(j=1;j<=n;j++)
{
for(j=1;j<=n-1;j++) /// searching a particular number from 1 to n-1
{
for(p=1;p<=n;p++) /// detecting numbers location
{
if(a[p]==j)
{
T=a[p];
for(q=p;q>=j;q--)
{
a[q]=a[q-1];
}
a[j]=T; s=p-j; /// p-j swaps is needed
}
//S=S+s;
}
S=S+s;
}
printf("Optimal train swapping takes %d swaps.\n",S
);
}
return 0;
}
CiNpbmNsdWRlPHN0ZGlvLmg+CmludCBuLE4saSxqLHAscSx0LFQscyxTLGFbNTFdOwppbnQgbWFpbigpCnsKICAgIHNjYW5mKCIlZCIsJk4pOyBnZXRjaGFyKCk7CiAgICBmb3IoaT0xO2k8PU47aSsrKQogICAgewogICAgICAgIFM9cz0wOwogICAgICAgIHNjYW5mKCIlZCIsJm4pOyBnZXRjaGFyKCk7CiAgICAgICAgZm9yKGo9MTtqPD1uO2orKykKICAgICAgICB7CiAgICAgICAgICAgIHNjYW5mKCIlZCIsJmFbal0pOwogICAgICAgIH0gZ2V0Y2hhcigpOyBhW24rMV09J1wwJzsKICAgICAgICBmb3Ioaj0xO2o8PW4tMTtqKyspICAgLy8vIHNlYXJjaGluZyBhIHBhcnRpY3VsYXIgbnVtYmVyIGZyb20gMSB0byBuLTEKICAgICAgICB7CiAgICAgICAgICAgIGZvcihwPTE7cDw9bjtwKyspIC8vLyBkZXRlY3RpbmcgbnVtYmVycyBsb2NhdGlvbgogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZihhW3BdPT1qKQogICAgICAgICAgICAgICAgewoKICAgICAgICAgICAgICAgICAgICAgICAgVD1hW3BdOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IocT1wO3E+PWo7cS0tKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhW3FdPWFbcS0xXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBhW2pdPVQ7IHM9cC1qOyAgLy8vIHAtaiBzd2FwcyBpcyBuZWVkZWQKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC8vUz1TK3M7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgUz1TK3M7CgogICAgICAgIH0KICAgICAgICBwcmludGYoIk9wdGltYWwgdHJhaW4gc3dhcHBpbmcgdGFrZXMgJWQgc3dhcHMuXG4iLFMpOwoKICAgIH0KCiAgICByZXR1cm4gMDsKfQo=