Cod sursa(job #1450596)

Utilizator cristina_borzaCristina Borza cristina_borza Data 13 iunie 2015 19:35:41
Problema Kperm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

#define NMAX 5005
#define MOD 666013

using namespace std;

ifstream f ("kperm.in") ;
ofstream g ("kperm.out") ;

short int n , k;
unsigned long long v[NMAX] , sol = 1 ;

int main(){
    f >> n >> k ;
    if(!(k % 2)){
        g << 0 ;
        return 0 ;
    }
    v[0] = 1 ;
    for(int i = 1 ; i <= 5000 ; ++i){
        v[i] = (v[i - 1] * i) % MOD ;
    }
    sol = (v[n % k] * v[k - n % k]) % MOD ;
    for(int i = 1 ; i <= n % k ; ++i){
        sol = (sol * v[n / k + 1]) % MOD ;
    }
    for(int i = 1 ; i <= k - n % k ; ++i){
        sol = (sol * v[n / k]) % MOD ;
    }
    g << sol % MOD ;
    return 0;
}