Pagini recente » Cod sursa (job #1895005) | Cod sursa (job #2394649) | Cod sursa (job #1677500) | Cod sursa (job #2228249) | Cod sursa (job #1709169)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream f ("consecutive.in");
ofstream g ("consecutive.out");
typedef struct{int x,y;}NOD;
NOD v[100000];
int t,i,n,x,y,j;
f>>t;
for(i=1;i<=t;i++)
{
f>>n;
x=n/2+1;y=n/2;j=0;
while(y>=1)
{
int a=(x*(x+1)/2);
int b=(y*(y-1)/2);
if(a-b==n)
{v[++j].x=x;v[j].y=y;x--;y--;}
else if(a-b<n)
y--;
else x--;
}
g<<j<<'\n';
for(int k=1;k<=j;k++)
g<<v[k].y<<' '<<v[k].x<<'\n';
}
f.close();
g.close();
return 0;
}