Pagini recente » Cod sursa (job #2690889) | Cod sursa (job #234364) | Cod sursa (job #1946091) | Cod sursa (job #2509146) | Cod sursa (job #1709064)
#include <fstream>
#define NMAX (1 << 17)
using namespace std;
ifstream fin("consecutive.in");
ofstream fout("consecutive.out");
int solX[NMAX], solY[NMAX];
int main()
{
int t;
long long n, a;
fin >> t;
while(t--)
{
fin >> n;
int sol = 0, k = 0;
for(long long i = 2; i < (1 << 17); i++)
{
a = n - i * (i - 1) / 2;
if(a <= 0)
break;
if(a % i == 0)
{
sol++;
solX[k] = a / i;
solY[k] = (a / i) + (i - 1);
k++;
}
}
fout << k << "\n";
for(int i = 0; i < k; i++)
fout << solX[i] << " " << solY[i] << "\n";
}
fin.close();
fout.close();
return 0;
}