Pagini recente » Monitorul de evaluare | Cod sursa (job #2980618) | Cod sursa (job #2969145) | Cod sursa (job #2686039) | Cod sursa (job #466483)
Cod sursa(job #466483)
#include<stdio.h>
#define MOD 1000000007
#define ll long long
int viz[100006],n,k;
ll sol;
int main ()
{
int i,a,b;
ll r;
freopen("colorare3.in","r",stdin);
freopen("colorare3.out","w",stdout);
scanf("%d%d",&n,&k);
sol=k;
for(i=1;i<n && sol;i++)
{
scanf("%d%d",&a,&b);
if(i==1)
{
viz[a]++;viz[b]++;
continue;
}
r=k-viz[a];
if(r>k-viz[b])
r=k-viz[b];
if(r==k)
r--;
sol*=r;
sol%=MOD;
viz[a]++;viz[b]++;
}
printf("%lld\n",sol);
return 0;
}