Cod sursa(job #2240460)

Utilizator theodor.moroianuTheodor Moroianu theodor.moroianu Data 13 septembrie 2018 15:27:58
Problema Sortari2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <bits/stdc++.h>
#define mod 999017
using namespace std;

ifstream in("sortari2.in");
ofstream out("sortari2.out");

int dp[1010];

int main()
{
    int n;
    in >> n;

    int ans = 1;
    for (int i = 1; i <= n; i++)
        ans = 1LL * ans * i % mod;

    dp[0] = dp[1] = 1;

    for (int i = 2; i <= n; i++) {
        dp[i] = 1;
        for (int j = 1; j < i; j++)
            dp[i] = (dp[i] + 1LL * j * dp[i - j]) % mod;
    }

    ans -= dp[n];

    out << (ans + mod) % mod;

    return 0;
}