Cod sursa(job #2034916)

Utilizator lucametehauDart Monkey lucametehau Data 8 octombrie 2017 16:53:25
Problema 1-sir Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#define MOD 194767

using namespace std;

ifstream cin("1-sir.in");
ofstream cout("1-sir.out");

const int N_MAX = 65536;

int n, s;
int k1, val;

int sol[2][1 + N_MAX];

int modul(int n)
{
    if(n < 0)
        return -n;
    return n;
}
int main()
{
    cin >> n >> s;
    val = n * (n + 1) / 2;
    if(s > val || s < -val)
    {
        cout << 0;
        return 0;
    }
    k1 = 1;
    sol[0][0] = 1;
    for(int i = 2; i <= n; i++, k1 = 1 - k1)
    {

        for(int j = 0; j <= val; j++)
            sol[k1][j] = (sol[1 - k1][modul(j - (i - 1))] + sol[1 - k1][modul(j + (i - 1))]) % MOD;
    }
    cout << sol[1 - k1][s];
    return 0;
}