Cod sursa(job #2391803)

Utilizator IoanMihaiIoan Mihai IoanMihai Data 29 martie 2019 11:32:08
Problema Nunta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<bits/stdc++.h>
using namespace std;
ifstream fin("nunta.in");
ofstream fout("nunta.out");
int n;
#define X 210
unsigned char a[X]={1,1},b[X]={1,2};
unsigned char *s1=a,*s2=b,*sx;
void afisare(unsigned char A[])
{
  for (int i=A[0];i>=1;i--)
    fout<<(int)A[i];
}
void adunare(unsigned char A[],unsigned char B[])
{
  int T=0;
  if(A[0]<B[0]) A[0]=B[0];
  for (int i=1;i<=A[0];i++)
   {
     T+=A[i]+B[i];
     A[i]=T%10;
     T/=10;
   }
  if (T>0)
    A[++A[0]]=1;
}
int main()
{
  fin>>n;
  if (n<=2) s2[1]=n;
  else
  for (int i=3;i<=n;i++)
  {
    adunare(s1,s2);
    sx=s1;
    s1=s2;
    s2=sx;
  }
  afisare(s2);
  return 0;
}