Pagini recente » Regulament, preONI 2006 | Cod sursa (job #2926089) | Cod sursa (job #2068347) | Cod sursa (job #1472170) | Cod sursa (job #1708624)
#include <iostream>
#include <vector>
using namespace std;
typedef long long ll;
int t;
ll n;
vector <vector<ll>> ans;
int main() {
freopen("consecutive.in","r",stdin);
freopen("consecutive.out","w",stdout);
for(cin >> t; t--;) {
cin >> n;
vector<ll> sol;
ll n2 = (n << 1);
for(ll p = 1; p * p <= n2; p++) {
if(n2 % (p + 1) == 0) {
ll k = n2 / (p + 1) - p;
if(k > 0 && (k & 1) == 0) {
k >>= 1;
sol.push_back(k);
sol.push_back(k + p);
ans.push_back(sol);
sol.clear();
}
}
}
cout << ans.size() << '\n';
for(int i = 0; i < ans.size(); i++) {
sol = ans[i];
for(int j = 0; j < sol.size(); j++)
cout << sol[j] << " ";
cout << '\n';
}
ans.clear();
}
return 0;
}