Pagini recente » Cod sursa (job #37104) | Cod sursa (job #3250826) | Cod sursa (job #183231) | Cod sursa (job #2493796) | Cod sursa (job #2253634)
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100000;
const int MOD = 1.e9 + 7;
int gr[MAXN + 5];
int main() {
freopen("colorare3.in", "r", stdin);
freopen("colorare3.out", "w", stdout);
int n, k;
scanf("%d%d", &n, &k);
for (int i = 1; i < n; ++i) {
int x, y;
scanf("%d%d", &x, &y);
gr[x]++;
gr[y]++;
}
int ans = 1;
for (int i = 1; i <= gr[1]; ++i)
ans = 1LL * ans * (k - i + 1) % MOD;
for (int i = 2; i <= n; ++i)
for (int j = 1; j < gr[i]; ++j)
ans = 1LL * ans * (k - j) % MOD;
printf("%d\n", ans);
return 0;
}