Cod sursa(job #1643816)

Utilizator Athena99Anghel Anca Athena99 Data 9 martie 2016 20:21:14
Problema Colorare3 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <fstream>

using namespace std;

ifstream fin("colorare3.in");
ofstream fout("colorare3.out");

typedef long long i64;

const int nmax= 100000;
const int mod= 1000000007;

i64 f[nmax+1];

int main(  ) {
    int n, k;
    fin>>n>>k;
    for ( int i= 1; i<=n-1; ++i ) {
        int a, b;
        fin>>a>>b;

        ++f[a], ++f[b];
    }

    i64 sol= 1;
    for ( int i= 1; i<=n; ++i ) {
        for ( int j= 1; j<=f[i]-1; ++j ) {
            sol= ((i64)sol*(k-j))%mod;
        }
    }

    fout<<((i64)sol*k)%mod<<"\n";

    return 0;
}