Pagini recente » Cod sursa (job #2186556) | Cod sursa (job #906653) | Cod sursa (job #352538) | Cod sursa (job #3040678) | Cod sursa (job #1712153)
using namespace std;
#include <fstream>
#include <vector>
#include <algorithm>
#include <string>
using ll = long long;
using pii = pair<int, int>;
using pll = pair<ll, ll>;
vector< pll > sol;
int main()
{
int t;
ll n, lg, x;
ifstream fin("consecutive.in");
ofstream fout("consecutive.out");
for (fin >> t; t; --t)
{
fin >> n;
sol.clear();
for (lg = 2; lg * lg < 2 * n; ++lg)
if ((2 * n) % lg == 0)
{
x = (2 * n) / lg - lg + 1;
if (x > 0 && x % 2 == 0) sol.emplace_back(x / 2, x / 2 + lg - 1);
}
fout << sol.size() << '\n';
for (auto &sum : sol) fout << sum.first << ' ' << sum.second << '\n';
}
fin.close();
fout.close();
return 0;
}