블록
시간 제한1.5초메모리 제한256 MB
1부터 n까지의 순열 중 왼쪽에서 l개, 오른쪽에서 p개의 최댓값이 보이는 순열의 개수를 10^9+7로 나눈 나머지를 구합니다.
문제
소피는 개의 직육면체 블록을 가지고 논다. 번째 블록의 크기는 이다.
그녀는 모든 블록을 면이 바닥에 닿도록 세워서 한 줄로 나란히 배치한다. 배치가 끝나면 소피는 멀리 떨어져서 줄의 왼쪽 끝과 오른쪽 끝에서 각각 바라본다. 각 블록은 뒤에 있는 자기보다 낮은 블록을 모두 가린다.
소피는 왼쪽 끝에서 정확히 개의 블록이, 오른쪽 끝에서 정확히 개의 블록이 보일 때 만족한다. 그녀를 만족시키는 배치의 수를 구하라.
입력
첫 줄에 데이터 세트의 개수 ()이 주어진다. 이어지는 개의 줄에는 세 정수 , , (, )가 공백으로 구분되어 한 줄에 하나씩 주어진다. 각각 블록의 개수, 왼쪽 끝에서 보고 싶은 블록의 개수, 오른쪽 끝에서 보고 싶은 블록의 개수이다.
출력
각 데이터 세트에 대해 만족하는 배치의 수를 로 나눈 나머지를 한 줄에 출력한다.
힌트
첫 번째 데이터 세트에서 만족하는 배치는 , , 이다. 배치 에서는 왼쪽에서 블록 1, 2, 4가 보이고, 오른쪽에서는 블록 4와 3이 보인다.