Pagini recente » Cod sursa (job #1391623) | Cod sursa (job #163252) | Cod sursa (job #2418222) | Cod sursa (job #1368816) | Cod sursa (job #974011)
Cod sursa(job #974011)
#include <fstream>
#define In "1-sir.in"
#define Out "1-sir.out"
#define Lim 32800
#define MOD 194767
#define abs(x) (((x)>(0))?(x):(-(x)))
using namespace std;
int N, S, dp[Lim];
inline void Read()
{
ifstream f(In);
f>>N>>S;
S = abs(S);
f.close();
}
inline void Solve()
{
S = N*(N-1)/2-S;
if(S<0)
{
S = 0;
return ;
}
int LastS = 0, i, j,x;
dp[0] = 1;
for(i = 2;i <= N; ++i)
{
x = 2*(N-i+1);
for(j = LastS;j >= 0 ; --j)
dp[j+x] = (dp[j+x]+dp[j])%MOD;
LastS += x;
}
}
inline void Write()
{
ofstream g(Out);
g<<dp[S]<<"\n";
g.close();
}
int main()
{
Read();
Solve();
Write();
return 0;
}