Cod sursa(job #116157)

Utilizator cos_minBondane Cosmin cos_min Data 17 decembrie 2007 21:36:37
Problema Litere Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include <stdio.h>
using namespace std;

#define in "litere.in"
#define out "litere.out"
#define dim 10001

int N, Sol=0;
char A[dim];
int S[dim], T[27];

int main()
{
    freopen(in,"r",stdin);
    freopen(out,"w",stdout);
    
    for ( int i = 1; i <= 26; i++ )
        T[i] = 0;
    
    scanf("%d\n", &N);
    for ( int i = 1; i <= N; i++ )
        scanf("%c", &A[i]), T[A[i]-96] += 1;
    
    for ( int i = 1; i <= N; i++ )
    {
        S[0] = 0;
        int NrT = 0;
        for ( int j = 1; j <= N; j++ )
        {
            if ( (int)A[j]-96 >= i ) 
            {
                 S[j] = S[j-1] + 1;
                 if ( (int)A[j]-96 == i ) Sol += S[j] - NrT - 1, NrT += 1;
            }
            else S[j] = S[j-1];
        }
        
       /* for ( int j = 1; j <= N; j++ )
            printf("%d ", S[j]);
        
        
        printf("\n%d\n", Sol);*/
    }
    
    printf("%d", Sol);
}