Cod sursa(job #466177)

Utilizator miculprogramatorA Cosmina - vechi miculprogramator Data 26 iunie 2010 11:52:00
Problema Colorare3 Scor 10
Compilator cpp Status done
Runda Stelele Informaticii 2010, gimnaziu si clasa a IX-a, Ziua 2 Marime 0.83 kb
#include <stdio.h>
using namespace std;

#define MOD 1000000007

int  ap[100001];
long int n, x, y;
long int i, j;
long long k;
long long posibilitati = 1;

long long  factorial (long int x)
{
    long long fact = 1;
    for (j=1; j<=x; ++j)
    {
        fact *= j;
    }
    return fact;
}

int main ()
{
    FILE *f = fopen ("colorare3.in","r");
    FILE *g = fopen ("colorare3.out","w");
    fscanf (f,"%ld %lld", &n, &k);

    for (i=1; i<n; ++i)
    {
        fscanf (f,"%ld %ld", &x, &y);
        ap[x] ++;
        ap[y] ++;
    }

    for (i=1; i<=n; ++i)
    {
        //printf ("din %d pleaca %d drumuri\n", i, ap[i]);
        posibilitati *= factorial(ap[i]);
        posibilitati %= MOD;
    }

    fprintf (g,"%lld", posibilitati % MOD);

    fclose(g);
    fclose(f);
    return 0;
}