Cod sursa(job #2002037)
| Utilizator | Data | 18 iulie 2017 14:28:00 | |
|---|---|---|---|
| Problema | 1-sir | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.68 kb |
#include <fstream>
using namespace std;
long long n,s,i,j,t,v[66005],w[66005];
int main()
{
ifstream f("1-sir.in");
ofstream g("1-sir.out");
f>>n>>s;
if(s<0) s*=-1;
if(s>(n*(n-1)/2))
{
g<<"0\n";
return 0;
}
v[n*(n-1)/2]=1;
t=194767;
s+=n*(n-1)/2;
for(i=1; i<n; i++)
{
for(j=n*(n-1)/2-i*(i-1)/2; j<=n*(n-1)/2+i*(i-1)/2; j++)
{
w[j+i]+=v[j];
w[j-i]+=v[j];
}
for(j=n*(n-1)/2-i*(i+1)/2; j<=n*(n-1)/2+i*(i+1)/2; j++)
{
v[j]=w[j]%t;
w[j]=0;
}
}
g<<v[s]<<'\n';
f.close(); g.close();
return 0;
}
