Cod sursa(job #673725)

Utilizator ciuscatalincius catalin ciuscatalin Data 4 februarie 2012 20:28:11
Problema Patrate2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include<fstream>
#define dmax 100010
using namespace std;
int n,a[dmax];
void citire()
{
     ifstream f("patrate2.in");
     f>>n;
     f.close();
}
void inmultire(int nr)
{
     int i,t=0;
     for (i=1;i<=a[0];i++) 
	 {
	     a[i]=a[i]*nr+t;
	     t=a[i]/10;
	     a[i]=a[i]%10;
	 }
     while (t != 0)
	 {
	     a[0]++;
	     a[a[0]]=t%10;
	     t=t/10;
	 }
}
void solve()
{
     int i;
	 a[0]=1; 
     a[1]=1;
     for (i=2; i<=n; i++)
	 inmultire(i);
     for(i=1;i<=n*n/4;i++)
	 inmultire(16);
     for(i=n*n/4*4+1;i<=n*n;i++)
	 inmultire(2);
}
void afisare()
{
     int i;
     ofstream g("patrate2.out");
     for (i=a[0]; i>=1; i--)
	 g<<a[i];
	 g.close();
}
int main()
{
    citire();
    solve();
    afisare();
    return 0;
}