Pagini recente » Cod sursa (job #1097426) | Cod sursa (job #93180) | Cod sursa (job #1126341) | Cod sursa (job #2944850) | Cod sursa (job #2054065)
#include <stdio.h>
#include <math.h>
int main(void){
int n,t,i,a,nr;
double k,rad;
int v1[5000],v2[5000];
freopen("consecutive.in", "r", stdin);
freopen("consecutive.out", "w", stdout);
scanf("%d", &t);
for(i=0; i<t; i++){
scanf("%d", &n);
nr=0;
rad=(-1+sqrt(1+8*n))/2;
for(a=2; a<=(int)rad; a++){
k=n/a - (a-1)/2;
//if((double)(int)k==k){
if((2*n-a*(a-1))%(2*a)==0){
v1[nr]=(int) k;
v2[nr]=(int) k+a-1;
nr++;
}
}
printf("%d\n",nr);
for(a=0; a<nr; a++){
printf("%d %d\n",v1[a], v2[a]);
}
}
return 0;
}