Pagini recente » Cod sursa (job #48288) | Cod sursa (job #2812414) | Cod sursa (job #134992) | Cod sursa (job #100818) | Cod sursa (job #1484364)
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
#define mod 1000000007
#define maxN 100002
using namespace std;
int n, i, j, k, V[maxN];
long long sol;
void write();
void read()
{
int x, y;
freopen("colorare3.in", "r", stdin);
scanf("%d %d", &n, &k);
for (i = 1; i <= n - 1; ++ i)
{
scanf("%d %d", &x, &y);
++ V[x];
++ V[y];
}
}
void solve()
{
sol = 1;
for (i = 1; i <= n; ++ i)
{
for (j = 1; j < V[i]; ++ j)
sol = (sol * (k - j)) % mod;
if (i == 1)
sol = (sol * k) % mod;
}
}
void write()
{
freopen("colorare3.out", "w", stdout);
printf("%lld", sol);
exit(0);
}
int main()
{
read();
solve();
write();
return 0;
}