Cod sursa(job #113435)
| Utilizator | Data | 10 decembrie 2007 08:29:20 | |
|---|---|---|---|
| Problema | Multimi2 | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.49 kb |
#include<math.h>
#include<stdio.h>
#include<values.h>
FILE *f1,*f2;
int main ()
{
long unsigned n,x1,k;
double k1,x;
int i;
f1=fopen("sumacons.in","r");
f2=fopen("sumacons.out","w");
//printf("n=");
fscanf(f1,"%lu",&n);
for(x1=0;x1<=n-2;x1++){x=x1;
k1=(-(2*x+1)+sqrt((2*x+1)*(2*x+1)+8*n-8*x))/2;
if(k1>=1){k=k1;
if(n==(k+1)*x1+k*(k+1)/2){
fprintf(f2,"%lu=%lu",n,x1);
for(i=1;i<=k;i++)
fprintf(f2,"+%lu",(x1+i));
fprintf(f2,"\n");}
}
}
fclose(f1);fclose(f2);
return 0;
}
