- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
#include<stdio.h>
int main(void)
{
int a=10000,b=0,c=2800,d,e=0,f[2801],g;FILE *fo;
if (!(fo=fopen("C:\\out","w"))) return 1;
for (;b-c;) f[b++]=a/5;
for(;d=0,g=c*2;c-=14,fprintf(fo,"%.4d",e+d/a),e=d%a)
for(b=c;d+=f[b]*a, f[b]=d%--g,d/=g--,--b;d*=b);
}
аффтару респект и уважуха!
Конечно можно заморочиться и попробывать разобраться, но на первый взгляд - реально не очевидно, почему это вообще работает так, как предполагалось.