Cod sursa(job #228835)
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <cassert>
#include <set>
#include <stack>
#include <vector>
#include <deque>
#include <queue>
#include <map>
#include <bitset>
#include <algorithm>
#define oo 1<<29
#define mp make_pair
#define pb push_back
#define LL long long
#define Nmax 33100
#define MOD 194767
using namespace std;
int last[Nmax], now[Nmax];
int N,S;
int main(){
int i,j;
freopen("1-sir.in", "r", stdin);
freopen("1-sir.out", "w", stdout);
scanf("%d%d",&N,&S);
if (abs(S) > N * (N + 1) >> 1){ printf("0\n"); return 0; }
last[0] = 1;
for (i = 2; i <= N; ++i) {
memset(now, 0, sizeof(now));
for (j = 0; j <= (i * (i + 1) >> 1) ; ++j)
now[j] += (now[j] + last[abs(j - i + 1)] + last[j + i - 1]) % MOD;
memcpy(last, now, sizeof(now));
}
printf("%d\n", now[abs(S)]);
return 0;
}