Cod sursa(job #775278)

Utilizator tzipleatudTudor Tiplea tzipleatud Data 7 august 2012 17:42:27
Problema 1-sir Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#define N 360
#define MOD 194767

using namespace std;

ifstream f("1-sir.in");
ofstream g("1-sir.out");

int n,s,i,j,D[2][N*(N-1)],S;

inline int mod (int x)
{
    return (x>0?x:-x);
}

int Solve ()
{
    s=mod(s);
    S=n*(n-1);
    if (s>S) return 0;
    int p=0;
    D[p][0]=1;
    for (i=1;i<n;i++)
    {
        p=!p;
        for (j=0;j<=S;j++)
        {
            D[p][j]=D[!p][mod(j-i)]+D[!p][j+i];
            while (D[p][j]>=MOD) D[p][j]-=MOD;
        }
    }
    return D[p][s];
}

int main ()
{
    f >> n >> s;
    g << Solve () << '\n';
    f.close();g.close();
    return 0;
}