Nu aveti permisiuni pentru a descarca fisierul grader_test13.in
Cod sursa(job #1204711)
| Utilizator | Data | 3 iulie 2014 18:35:28 | |
|---|---|---|---|
| Problema | Nunta | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.64 kb |
#include <cstdio>
using namespace std;
int n, N1[1009], N2[1009];
inline void add (int A[], 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;
}
inline void Write (int A[])
{
for (int i=A[0]; i>=1; i--) printf("%d", A[i]);
printf("\n");
}
int main()
{
freopen("nunta.in", "r", stdin);
freopen("nunta.out", "w", stdout);
scanf("%d", &n);
N1[0] = N2[0] = N2[1] = 1;
for (int i=1; i<=n; i++)
{
if (i & 1) add (N1, N2);
else add (N2, N1);
}
if (n & 1) Write(N1);
else Write(N2);
return 0;
}
