Pagini recente » Borderou de evaluare (job #2211310) | Cod sursa (job #1122159) | Borderou de evaluare (job #727435) | Cod sursa (job #1630231) | Cod sursa (job #2442622)
#include <iostream>
#include <algorithm>
#include <vector>
#include <map>
#include <cstdio>
using namespace std;
int max(int n)
{
return (n * (n - 1)) >> 1;
}
int solve(int n, int s)
{
if (s < 0)
return solve(n, -s);
int m = max(n);
if (m < s)
return 0;
if (m == s)
return 1;
--n;
return solve(n, s - n) + solve(n, s + n);
}
int main()
{
freopen("1-sir.in", "r", stdin);
freopen("1-sir.out", "w", stdout);
int n, s;
cin >> n >> s;
cout << solve(n, s);
return 0;
}