#include <iostream>
unsigned GetSequenceSum(unsigned given) {
unsigned left = 1;
unsigned right = 1;
unsigned sum = 0;
unsigned cnt = 0;
for (;sum < given;sum += right++) ;
unsigned tmp = given >> 1;
for (--right;left <= tmp;) {
if (sum >given) {
sum -= left++;
}
else {
if (given == sum) {
++cnt;
std::cout << "given = " << given << " from " << left << " to " << right << std::endl;
}
sum += (++right);
}
}
return cnt;
}
int main() {
std::cout << "solution number = " << GetSequenceSum(15) << std::endl;
return 0;
}