Cod sursa(job #1828251)
| Utilizator | Data | 12 decembrie 2016 23:12:45 | |
|---|---|---|---|
| Problema | Nunta | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.62 kb |
#include <cstdio>
int n, V[2][302];
void Add(int A[], int B[])
{
int t = 0, i = 1;
for (i = 1; i <= B[0] || t > 0; i++) {
t += A[i] + B[i];
A[i] = t % 10;
t /= 10;
}
if(i - 1 > A[0]) {
A[0] = i - 1;
}
}
int main() {
freopen("nunta.in", "r", stdin);
freopen("nunta.out", "w", stdout);
int i;
scanf("%d", &n);
V[0][0] = V[0][1] = V[1][0] = V[1][1] = 1;
for(i = 2; i <= n; i++) {
Add(V[i & 1], V[!(i & 1)]);
}
for(i = V[n & 1][0]; i > 0; i--) {
fputc(V[n & 1][i] + '0', stdout);
}
return 0;
}
