Cod sursa(job #1549874)

Utilizator StarGold2Emanuel Nrx StarGold2 Data 12 decembrie 2015 20:41:54
Problema 1-sir Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <cstdio>

#define MOD 194767
#define DIM 37000
using namespace std;

int N, S, D[2][DIM];

int main () {

    freopen ("1-sir.in" , "r", stdin );
    freopen ("1-sir.out", "w", stdout);

    scanf ("%d %d", &N, &S);

    D[1][0] = 1;
    for (int i = 2; i <= N; i ++)
        for (int j = 0; j <= N * (N-1) / 2; j ++)
            D[i&1][j] = (j-i+1 >= 0) ? (D[(i-1)&1][j-i+1] + D[(i-1)&1][j+i-1]) % MOD : (D[(i-1)&1][-(j-i+1)] + D[(i-1)&1][j+i-1]) % MOD;

    printf ("%d\n", (S > N * (N-1) / 2 || S < -N * (N-1) / 2) ? 0 : D[N&1][S]);

    return 0;
}