음수 좌표를 밟지 않는 랜덤 걷기
시간 제한2초메모리 제한64 MB
0에서 출발해 좌우로 한 칸씩 2N번 걸어 원점으로 돌아오고 음수 좌표에 들어가지 않는 경우의 수를 1,000,000,007로 나눈 나머지를 구합니다.
문제
선영이는 아주 긴 직선의 원점에 서 있다. 한 번에 한 칸씩 왼쪽이나 오른쪽으로 이동할 수 있다.
번 움직여서 시작한 위치로 돌아오는 랜덤 걷기의 경로 수는 이다. 시작한 점으로 다시 돌아와야 하므로 왼쪽으로 이동한 횟수와 오른쪽으로 이동한 횟수가 같아야 하고, 오른쪽으로 번, 왼쪽으로 번 움직이는 순서만 고르면 되기 때문이다.
위 문제에서는 음수 좌표로 이동할 수 있다. 여기에 음수 좌표로 이동하지 못한다는 조건을 추가했을 때 경로의 수를 구하는 프로그램을 작성하시오. 예를 들어 이면 선영이는 으로 이동할 수 있지만, 으로는 이동하지 못한다.
입력
첫째 줄에 테스트 케이스의 개수 ()가 주어진다. 다음 개 줄에는 각 테스트 케이스의 ()이 한 줄에 하나씩 주어진다.
출력
각 테스트 케이스마다 음수 좌표를 밟지 않고 시작점으로 돌아오는 랜덤 걷기의 경로 수를 1,000,000,007로 나눈 나머지를 한 줄에 하나씩 출력한다.