Pagini recente » Cod sursa (job #2643060) | Cod sursa (job #2938780) | Cod sursa (job #923085) | Cod sursa (job #2196149) | Cod sursa (job #331463)
Cod sursa(job #331463)
#include<stdio.h>
using namespace std;
#define dim 10001
int v[27];
int w[dim];
int 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];
}
break;
}
fprintf(g,"%d\n",schimb);
fclose(f);
fclose(g);
return 0;}