#include <stdio.h>
long long int f[100][2];
// c로 끝나는 n자리 이친수의 개수
long long int op(int n, int c)
{
if (f[n][c] > -1) return f[n][c];
if (c == 0)
{
f[n][0] = op(n - 1, 1) + op(n - 1, 0);
return f[n][0];
}
else if (c == 1)
{
f[n][1] = op(n - 1, 0);
}
}
int main()
{
long long int N;
for (int i = 2; i <= N; i++)
{
for (int j = 0; j < 2; j++)
f[i][j] = -1;
}
f[1][1] = 0;
f[1][0] = 1;
printf("%lld\n", op
(N
, 0) + op
(N
, 1)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgpsb25nIGxvbmcgaW50IGZbMTAwXVsyXTsKCi8vIGProZwg64Gd64KY64qUIG7snpDrpqwg7J207Lmc7IiY7J2YIOqwnOyImApsb25nIGxvbmcgaW50IG9wKGludCBuLCBpbnQgYykKewoJaWYgKGZbbl1bY10gPiAtMSkgcmV0dXJuIGZbbl1bY107CglpZiAoYyA9PSAwKQoJewoJCWZbbl1bMF0gPSBvcChuIC0gMSwgMSkgKyBvcChuIC0gMSwgMCk7CgkJcmV0dXJuIGZbbl1bMF07Cgl9CgllbHNlIGlmIChjID09IDEpCgl7CgkJZltuXVsxXSA9IG9wKG4gLSAxLCAwKTsKCX0KfQoKaW50IG1haW4oKQp7Cglsb25nIGxvbmcgaW50IE47CglzY2FuZigiJWxsZCIsICZOKTsKCWZvciAoaW50IGkgPSAyOyBpIDw9IE47IGkrKykKCXsKCQlmb3IgKGludCBqID0gMDsgaiA8IDI7IGorKykKCQkJZltpXVtqXSA9IC0xOwoJfQoJZlsxXVsxXSA9IDA7CglmWzFdWzBdID0gMTsKCXByaW50ZigiJWxsZFxuIiwgb3AoTiwgMCkgKyBvcChOLCAxKSk7CglyZXR1cm4gMDsKfQ==