Pagini recente » Cod sursa (job #2227642) | Cod sursa (job #889196) | Cod sursa (job #3218940) | Cod sursa (job #1359372) | Cod sursa (job #331465)
Cod sursa(job #331465)
#include<stdio.h>
using namespace std;
#define dim 10001
int v[27],w[dim],a[dim];
char s;
int main()
{FILE *f=fopen("litere.in","r"), *g=fopen("litere.out","w");
int i,n,m,ss=0,sss=0,schimb=0,j,k;
fscanf(f,"%d ",&n);
m=n;
for(i=1;i<=n;i++)
{fscanf(f,"%c",&s);
a[++sss]=(int)s-96;
v[(int)s-96]++;}
i=1;
while(m!=0)
if(v[i]!=0)
{w[++ss]=i;m--;v[i]--;}
else i++;
for(i=1;i<ss;i++)
if(a[i]!=w[i])
{for(j=i+1;j<=sss;j++)
if(a[j]==w[i])
{
schimb+=j-i;
if(j-i==1)
a[j]=a[i];
else
for(k=j;k>i;k--)
a[k]=a[k-1];
j=sss+1;
}
}
fprintf(g,"%d\n",schimb);
fclose(f);
fclose(g);
return 0;}