Pagini recente » Cod sursa (job #1783606) | Cod sursa (job #2533391) | Cod sursa (job #1987296) | Cod sursa (job #2256829) | Cod sursa (job #178779)
Cod sursa(job #178779)
#include <stdio.h>
FILE *f,*g;
long t[5][3000],n,i,j,ini,ant1,ant3,r;
int main(){
f=fopen("12perm.in","r");
g=fopen("12perm.out","w");
fscanf(f,"%ld",&n);
t[1][1]=1;t[2][1]=2;t[3][1]=6;t[4][1]=2;t[4][2]=1;
t[1][0]=1;
t[2][0]=1;
t[3][0]=1;
t[4][0]=2;
// fprintf(g,"%d",n);
for(j=5;j<=n;j++){
if(j%4==0)ini=4;
else ini=j%4;
ant1=ini-1;
ant3=ini+1;
if(ant1==0)ant1=4;
if(ant3==5)ant3=1;
// fprintf(g,"%d*",ant1);
for(i=1,r=2*(j-2); i<=t[ant1][0]||r||i<=t[ant3][0] ; i++,r/=10){
r+=t[ant1][i]+t[ant3][i];
t[ini][i]=r%10;
}
t[ini][0]=i-1;
}
ini=n%4;
if(ini==0)ini+=4;
for(i=t[ini][0];i>=1;i--)fprintf(g,"%ld",t[ini][i]);
fclose(f);
fclose(g);
return 0;
}