Pagini recente » Cod sursa (job #62729) | Cod sursa (job #2286816) | Cod sursa (job #625386) | Cod sursa (job #1484514) | Cod sursa (job #2093923)
#include <bits/stdc++.h>
using namespace std;
#ifndef HOME
ifstream fi("1-sir.in");
ofstream fo("1-sir.out");
#else
ifstream fi("sir.in");
ofstream fo("sir.out");
#endif
const int N = 256 * 256, MOD = 194767;
int dp[2][N];
int n, s;
static void fix_mod(int &x) {
if (x < 0) x+= MOD;
if (x > MOD) x-= MOD; }
int main() {
fi >> n >> s;
s = abs(s);
if (n * (n + 1) < s || n % 2 != s % 2) {
fo << "0\n";
return 0; }
dp[1][0] = 1;
for (int i = 2; i <= n; ++i) {
swap(dp[0], dp[1]);
for (int t, j = 0; j <= i * (i - 1) / 2; ++j)
dp[1][j] = dp[0][abs(i + j - 1)] + dp[0][abs(i - j - 1)], fix_mod(dp[1][j]); }
fo << dp[1][s] << endl;
return 0; }