Cod sursa(job #2785981)

Utilizator Antonia_onisoruantonia onisoru Antonia_onisoru Data 19 octombrie 2021 22:09:16
Problema Patrate2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <fstream>
#include <stdio.h>

using namespace std;

ifstream in("patrate2.in");
ofstream out("patrate2.out");

const int POW = 2;
const int MAXC = 4000;

char nr[MAXC];

void multiply(char nr[], int &na, int b ){
  int t, i;

  t = 0;
  i = 0;
  while( i < na || t > 0 ){
    t += b * nr[i];
    nr[i] = t % 10;
    t /= 10;
    i++;
  }

  if( i > na )
    na = i;
}

int main(){
  int n, j, i;
  in>>n;
  nr[0] = 1;
  j = 1;
  for( i = 1; i <= n; i++ )
    multiply(nr, j, i);

  n = n * n;
  //cout<<n;
  while( n > 0 ){
    multiply(nr, j, 2);
    n--;
  }

  for( i = j - 1; i >= 0; i-- ){
    out<<(int)nr[i];
  }
  return 0;
}