Cod sursa(job #1660488)
Utilizator | Data | 23 martie 2016 10:23:28 | |
---|---|---|---|
Problema | 1-sir | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.67 kb |
#include <fstream>
#define MOD 194767
using namespace std;
ifstream fin("1-sir.in");
ofstream fout("1-sir.out");
int n, s, t, A[2][35000];
void PD(int x)
{
int i, j;
A[0][0]=1;
A[0][1]=1;
for (i=2; i<=n; i++)
{
for (j=0; j<=i*(i+1)/2; j++)
{
if (j>=i)
A[1][j]=(A[0][j]+A[0][j-i])%MOD;
else
A[1][j]=A[0][j]%MOD;
}
for (j=1; j<=i*(i+1)/2; j++)
A[0][j]=A[1][j];
}
fout<<A[0][x];
}
int main()
{
fin>>n>>s;
t= n*(n-1)/2 - s;
if (t%2==1)
fout<<0;
else
{
PD(t/2);
}
return 0;
}