Cod sursa(job #47693)

Utilizator Bluedrop_demonPandia Gheorghe Bluedrop_demon Data 3 aprilie 2007 22:04:23
Problema Culori Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
// Problema culori

#include <stdio.h>
#define BAZA      9901
#define MAX       501

int C[MAX];
int A[MAX][MAX];

int main()
{
    int n, i;
    freopen( "culori.in","rt", stdin );
             scanf( "%d", &n );
             for( i=1; i<=2*n-1; i++ )
                  scanf( "%d", &C[i] );
    fclose( stdin );
    
    int j, k;
    int s;
    for( i=1; i<=2*n; i++ ) A[i][i] = 1;
    
    for( i=1; i+1<2*n; i++ )
         for( j=i+2; j<=2*n+1; j++ )
              {
                     s = 0;
                     for( k=i+1; k<j; k++ ) if( C[k] == C[i+1] ) s += A[i+1][k]*A[k+1][j];
                     A[i][j] = s%BAZA;
              }
    
    freopen( "culori.out", "wt", stdout );
             printf( "%d", A[1][2*n-1] );
    fclose( stdout );
    return 0;
}