Pagini recente » Cod sursa (job #2791544) | Cod sursa (job #862364) | Cod sursa (job #1276467) | Monitorul de evaluare | Cod sursa (job #2628614)
#include <fstream>
#define MOD 1000000007
using namespace std;
ifstream fin( "colorare3.in" );
ofstream fout( "colorare3.out" );
int f[100000];
int main() {
int n, k, x, y, i, sol, j;
fin >> n >> k;
for ( i = 0; i < n - 1; ++i ) {
fin >> x >> y;
++f[x];
++f[y];
}
sol = k;
for ( i = 1; i <= n; ++i ) {
j = 0;
while ( f[i] > 1 ) {
sol = ((long long)sol * (k - j - 1)) % MOD;
--f[i];
++j;
}
}
fout << sol;
fin.close();
fout.close();
return 0;
}