Cod sursa(job #2480931)

Utilizator sansRotaru Razvan Andrei sans Data 26 octombrie 2019 11:22:06
Problema Nunta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <bits/stdc++.h>
using namespace std;
typedef int el_mundo[1005] ;
el_mundo k[1005];
void Adunare(el_mundo x,el_mundo y){
  int i,t=0;
  if(x[0]<y[0])
    x[0]=y[0];
  for(i=1;i<=x[0];i++,t/=10)
  {
    t=x[i]+y[i]+t;
    x[i]=t%10;
  }
  if(t)
    x[++x[0]]=t;
}
void AtribMic(el_mundo x, int n){
  x[0]=0;
  if(n==0)
    x[(x[0]=1)]=0;
  else
    for(;n;n/=10)
      x[++x[0]]=n%10;
}
ifstream in("nunta.in");
ofstream out("nunta.out");
int main(){
    int n;
    in>>n;
    AtribMic(k[0], 1);
    AtribMic(k[1], 1);
    for(int i = 2; i <= n;i++){
        Adunare(k[i], k[i-1]);
        Adunare(k[i], k[i-2]);
    }
    for(int i = k[n][0]; i > 0; i--) out << k[n][i];
}