Pagini recente » Cod sursa (job #2909006) | Cod sursa (job #2695096) | Cod sursa (job #2980787) | Cod sursa (job #2118461) | Cod sursa (job #2629577)
#include <fstream>
#include <cmath>
using namespace std;
ifstream cin("consecutive.in");
ofstream cout("consecutive.out");
long long a[100001][3];
long long n,k,ct;
int main()
{
int t;
cin>>t;
while(t--)
{
k=1;
ct=0;
cin>>n;
long long L = sqrt(2*n);
if(n==1) cout<<"1 1"<<"\n";
else{
for(int i=2;1ll*i<=L;i++)
{
long long remaining = n-(i*(i+1)/2);
if(remaining%i==0)
{
ct++;
a[k][1]=remaining/i+1;
a[k][2]=remaining/i+i;
k++;
}
}
cout<<ct<<"\n";
for(int i=1;1ll*i<k;i++)
cout<<a[i][1]<<" "<<a[i][2]<<"\n";
for(int i=1;1ll*i<k;i++)
{
a[i][1]=0;
a[i][2]=0;
}
}
}
return 0;
}