Pagini recente » Cod sursa (job #182540) | Cod sursa (job #1064613) | Cod sursa (job #2684348) | Cod sursa (job #1766715) | Cod sursa (job #1716139)
#include <iostream>
#include <cmath>
#include <stdio.h>
using namespace std;
int a[500000], b[500000];
int main()
{
int t, nr, i;
long long n, j;
freopen("consecutive.in","r",stdin);
freopen("consecutive.out","w",stdout);
cin >> t;
for (i = 0; i < t; ++i){
cin >> n;
nr = 0;
for (j = 1; (j + 1) * (j + 1) <= 2 * n; ++j){
if ((2 * n) % (j + 1) == 0){
if ((2 * n - j * j - j) % (2 * j + 2) == 0){
++nr;
a[nr] = (2 * n - j * j - j) / (2 * j + 2);
b[nr] = a[nr] + j;
}
}
}
cout << nr << "\n";
for (j = 1; j <= nr; ++j){
cout << a[j] << " " << b[j] << "\n";
}
}
return 0;
}