Cod sursa(job #3302243)
| Utilizator | Data | 5 iulie 2025 10:23:39 | |
|---|---|---|---|
| Problema | Consecutive | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva ICPC | Marime | 0.65 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("consecutive.in");
ofstream fout("consecutive.out");
int main()
{
int t;
fin >> t;
while (t--) {
long long s;
fin >> s;
vector <pair <long long, long long>> sol;
for (long long n = 2; n * n <= 2*s; n++) {
long long p = ((2 * s / n) - n + 1) / 2;
if ((2 * p + n - 1) * n / 2 == s) {
sol.push_back({p, p + n - 1});
}
}
fout << sol.size() << '\n';
for (auto it : sol) {
fout << it.first << ' ' << it.second << '\n';
}
}
return 0;
}
