페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#2489

숫자 맞추기 게임 1s - MB

문제

당신은 "숫자 맞추기"라는 재미있는 게임을 친구들과 하고 있다. 이 게임은 한명의 플레이어는 임의의 양의 정수를 생각하고, 나머지 사람들은 해당 플레이어가 주는 단서 서열을 가지고 숫자를 맞추는 게임이다.

단서 서열의 i번째 글자는 "Y" 혹은 "N" 으로 이뤄지는데, 이는 생각한 숫자가 i의 배수인지 아닌지를 뜻한다. 예를 들어 단서 서열이 "YYNYY"일 경우 이 숫자는 1, 2, 4, 5의 배수이며, 3의 배수는 아니라는 것이다. 때때로 단서들의 서열이 잘못되는 경우가 있을 수 있다.

예를 들어 "NYYY"의 경우 모든 정수는 1의 배수이기 때문에 이는 잘못된 단서 서열이다. 또한 "YNNY"의 경우 숨겨진 숫자가 4의 배수이다 라는 것을 뜻하지만, 2의 배수가 아니라고 되어있기 때문에 이는 잘못된 것이다(4의 배수가 되는 숫자는, 2의 배수도 되어야 한다).

N이 주어졌을 때 길이가 N인 단서 서열 중 올바른 단서 서열의 수를 구하는 프로그램을 작성하라.


입력

입력은 1이상 1,000,000이하의 정수 N이 입력된다.


출력

길이가 N인 단서 서열 중 올바른 단서 서열의 수를 출력하라. 답이 매우 크기 때문에 1,000,000,007 로 나눈 나머지를 출력한다.


예제

5
12

로그인해야 코드를 작성할 수 있어요.