Cod sursa(job #260372)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 16 februarie 2009 23:01:23
Problema Patrate2 Scor 10
Compilator c Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <stdio.h>

#define Nmax 155
#define Lmax 1024
#define BASE 10

int n;
int sol[Lmax];

void citire()
{
	scanf("%d\n", &n);
}

void mul(int A[], int b)
{
	int i, t;

	for (i = 1, t = 0; i <= A[0] || t; ++i, t /= BASE)
		A[i] = (t += b * A[i]) % BASE;
	A[0] = i - 1;
}

void scrie(int A[])
{
	int i;

	//printf("%d", A[A[0]]);
	for (i = A[0]; i >= 1; --i)
		printf("%d", A[i]);
	printf("\n");
}

void solve()
{
	int i;

	sol[0] = sol[1] = 1;
	for (i = 1; i <= n * n; ++i)
		mul(sol,2);
    mul(sol,n);
	scrie(sol);
}

int main()
{
	freopen("patrate2.in", "r", stdin);
	freopen("patrate2.out", "w", stdout);

	citire();
	solve();

	return 0;
}