Pagini recente » Cod sursa (job #943213) | Cod sursa (job #1512562) | Cod sursa (job #2225148) | Cod sursa (job #191343) | Cod sursa (job #1710222)
#include <cstdio>
#define MAXN 100000
struct mycreation{
int a, b;
}sol[MAXN];
int main(){
int n, t, i, ans, a;
long long x;
FILE *fin, *fout;
fin=fopen("consecutive.in", "r");
fout=fopen("consecutive.out", "w");
fscanf(fin, "%d", &t);
for(; t; t--){
fscanf(fin, "%d", &n);
ans=0;
i=2;
x=i*(i-1)/2;
while(x<=n){
a=(n-x)/i;
if(n==a*(long long)i+x){
ans++;
sol[ans].a=a;
sol[ans].b=a+i-1;
}
i++;
x=i*(long long)(i-1)/2;
}
if(sol[ans].a==0){
ans--;
}
fprintf(fout, "%d\n", ans);
for(i=1; i<=ans; i++){
fprintf(fout, "%d %d\n", sol[i].a, sol[i].b);
}
}
fclose(fin);
fclose(fout);
return 0;
}