Cod sursa(job #239349)

Utilizator horaxCont de teste horax Data 4 ianuarie 2009 17:03:58
Problema 12-Perm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
# include <stdio.h>



# define input "12perm.in"
# define output "12perm.out"

#define MOD 1048576

long n, i;

int main ()
{
	freopen( input, "r", stdin ) ;
	freopen ( output, "w", stdout ) ;

	scanf("%ld",&n);

	if(n == 1)
	{
		printf("1");
		return 0;
	}
	if(n == 2)
	{
		printf("2");
		return 0;
	}
	if(n == 3)
	{
		printf("6");
		return 0;
	}
/*	if(n == 4)
	{
		printf("12");
		return 0;
	}
	if(n == 5)
	{
		printf("20");
		return 0;
	}
	if(n == 6)
	{
		printf("34");
		return 0;
	}
*/
	long ti_3 = 2;
	long ti_2 = 2;
	long ti_1 = 6;

    long t_i;

	for(i = 4;i<=n; ++ i)
	{
    
        t_i = ti_1 + ti_3 + 2 * (i - 2);
		t_i%=MOD;
		
              		
		ti_3 = ti_2;	
		ti_2 = ti_1;
		ti_1 = t_i;
		
	
    }

	printf("%ld", t_i);

	return 0;
}