Cod sursa(job #1758631)

Utilizator hrazvanHarsan Razvan hrazvan Data 17 septembrie 2016 15:48:37
Problema Nunta Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <cstdio>
#define MAXL 210
using namespace std;
int d[2][MAXL];

int main(){
  FILE *in = fopen("nunta.in", "r");
  int n, i, j, l1, l2, tr;
  fscanf(in, "%d", &n);
  fclose(in);
  i = 2;
  d[0][0] = d[1][0] = 1;
  d[0][1] = d[1][1] = 1;
  for(; i <= n; i++){
    l1 = (i & 1);
    l2 = !(i & 1);
    tr = 0;
    for(j = 1; j <= d[l2][0]; j++){
      d[l1][j] += d[l2][j] + tr;
      tr = d[l1][j] / 10;
      d[l1][j] %= 10;
    }
    d[l1][0] = d[l2][0];
    while(tr > 0){
      d[l1][0]++;
      d[l1][d[l1][0]] = tr % 10;
      tr /= 10;
    }
  }
  FILE *out = fopen("nunta.out", "w");
  l1 = (n & 1);
  while(d[l1][0])
    fprintf(out, "%d", d[l1][d[l1][0]--]);
  fclose(out);
  return 0;
}