Cod sursa(job #526658)

Utilizator dornescuvladVlad Eugen Dornescu dornescuvlad Data 29 ianuarie 2011 02:25:51
Problema Colorare3 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <iostream>
#include <fstream>

using namespace std;

const char iname[] = "colorare3.in";
const char oname[] = "colorare3.out";
const int  mod     = 1000000007;
const int  nmax    = 100005;

ifstream fin(iname);
ofstream fout(oname);

long long vecini[nmax], n , k, x, y, i, j, ans;

int main()
{
	fin >> n >> k;
	for(i = 1; i <= n - 1; i ++)
	{
		fin >> x >> y;
		vecini[x]++, vecini[y]++;
	}
	
	ans = k;
	for(i = 1; i <= n; i ++)
		for(j = 1; j < vecini[i]; j ++)
			ans = (ans * (k - j)) % mod;
		
	fout << ans;
	return 0;
}