Pagini recente » Solutii preONI 2007, Runda 3 | Cod sursa (job #2351846) | Cod sursa (job #1776488) | Cod sursa (job #3170976) | Cod sursa (job #1792719)
#include <stdio.h>
using namespace std;
short int s1[301], s2[301];
inline void add (short int A[], short int B[]) {
int i, t = 0;
for (i = 1; i <= A[0] || i <= B[0] || t; i++, t /= 10)
A[i] = (t += A[i] + B[i]) % 10;
A[0] = i - 1;
}
int main() {
int N;
freopen ("nunta.in", "r", stdin);
freopen ("nunta.out", "w", stdout);
scanf ("%d", &N);
s1[0] = 1;
s1[1] = 1;
s2[0] = 1;
s2[1] = 2;
for (int i = 3; i <= N; i++)
if (i % 2 == 1)
add (s1, s2);
else add (s2, s1);
if (N % 2 == 1)
for (int i = s1[0]; i >= 1; i--)
fputc (s1[i] + '0', stdout);
else
for (int i = s2[0]; i >= 1; i--)
fputc (s2[i] + '0', stdout);
return 0;
}