Pagini recente » Cod sursa (job #2538948) | Cod sursa (job #1295354) | Cod sursa (job #1302561) | Cod sursa (job #2473403) | Cod sursa (job #1710007)
#include <iostream>
#include <fstream>
#include<cmath>
using namespace std;
typedef struct{long long x,y;}NOD;
NOD v[10000000];
long long t,i,n,j,k,a,b,p,q;
int main()
{
ifstream f ("consecutive.in");
ofstream g ("consecutive.out");
f>>t;
for(k=1;k<=t;k++)
{ j=0;
f>>n;
int x=sqrt(n)*2+2;
for(i=2;i<=x;i++)
{
if(i%2==0)
{
a=n/i-i/2;
b=n/i+i/2;
}
else {a=n/i-i/2-1;b=n/i+i/2;}
p=a*(a+1)/2;
q=b*(b+1)/2;
if(q-p==n&&a>=0)
{v[++j].x=b;v[j].y=a+1;}
}
g<<j<<'\n';
for(int l=1;l<=j;l++)
g<<v[l].y<<' '<<v[l].x<<'\n';
}
f.close();
g.close();
return 0;
}