Pagini recente » Cod sursa (job #1852952) | Cod sursa (job #73987) | Cod sursa (job #485051) | Cod sursa (job #1641444) | Cod sursa (job #1711566)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int T, N;
FILE *fin = fopen("consecutive.in", "r");
FILE *fout = fopen("consecutive.out", "w");
fscanf(fin, "%d", &T);
int aS[100000];
int aD[100000];
int i, x, SUS, JOS;
int k, c;
float cond;
for(i = 1; i <= T; i++)
{
c = 0;
fscanf(fin, "%d", &N);
x = 2;
do
{
SUS = (2*N - x*x + x);
JOS = (2*x);
k = SUS / JOS;
if(SUS % JOS == 0)
{
c++;
aS[c] = k ;
aD[c] = k+x-1;
}
x++;
}while(x <= 2*sqrt(N));
fprintf(fout, "%d\n",c);
for(x = 1; x <= c; x++)
fprintf(fout, "%d %d\n", aS[x], aD[x]);
}
fclose(fin);
fclose(fout);
return 0;
}