Pagini recente » Cod sursa (job #2444588) | Cod sursa (job #2437368) | Cod sursa (job #307021) | Cod sursa (job #2750484) | Cod sursa (job #1129348)
#include <fstream>
#include <algorithm>
#include <cstring>
#define NMAX 1000
using namespace std;
ifstream cin("nunta.in");
ofstream cout("nunta.out");
int Aux1[NMAX], Aux2[NMAX], Aux3[NMAX];
void adun(int a[], int b[]){
a[0] = max(a[0], b[0]);
int t = 0;
for(int i = 1; i <= a[0]; ++i){
a[i] += b[i] + t;
t = a[i] / 10;
a[i] %= 10;
}
while(t > 0){
a[++a[0]] = t % 10;
t /= 10;
}
}
int main(){
int n = 0;
cin >> n;
if(n <= 3){
cout << n;
return 0;
}
Aux1[0] = Aux2[0] = 1;
Aux1[1] = 2;
Aux2[1] = 3;
for(int i = 4; i <= n; ++i){
memcpy(Aux3, Aux1, sizeof(Aux1));
adun(Aux3, Aux2);
memcpy(Aux1, Aux2, sizeof(Aux1));
memcpy(Aux2, Aux3, sizeof(Aux2));
}
for(int i = Aux3[0]; i >= 1; --i)
cout << Aux3[i];
}