Cod sursa(job #477166)
| Utilizator | Data | 13 august 2010 17:24:19 | |
|---|---|---|---|
| Problema | Colorare3 | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.48 kb |
#include <cstdio>
#define modulo 1000000007
#define Nmax 100001
int N, K, i, j, nr, x, y;
int g[Nmax];
int main()
{
freopen("colorare3.in","r",stdin);
freopen("colorare3.out","w",stdout);
scanf("%d %d",&N,&K);
for (i=1; i<N; ++i)
{
scanf("%d %d",&x,&y);
++g[x], ++g[y];
}
for (i=1, nr=K; i<=N && nr!=0; ++i)
for (j=1; j<g[i] && j<=K; ++j)
nr = ((long long) nr * (K-j)) % modulo;
printf("%d\n",nr);
return 0;
}
