만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

N-beat

시간 제한3초메모리 제한1024 MB

요약
x×y 격자에서 화면 B개로 이루어진 순서열의 개수를 셉니다. 연속한 1개, 2개, 3개 화면의 켜진 버튼 합은 각각 p1, p2, p3 이하여야 하며, 답은 10^9+7로 나눈 나머지입니다.
난이도

보통10점 중 6점

유형
동적 계획법, 조합론, 행렬
정답자
아직 제출이 없습니다

문제

N-beat는 인기 있는 리듬 아케이드 게임이다. 플레이어는 x×yx \times y 격자에 배열된 버튼을 누른다. 버튼은 눌러야 할 때 켜지며, 점수를 얻으려면 정확한 타이밍에 눌러야 한다.

한 번의 N-beat 게임은 하나 이상의 화면으로 이루어진다. 화면은 눌러야 할 켜진 버튼들의 배치다.

위 그림은 4×44 \times 4 격자를 가진 N-beat 기계의 연속된 화면 4개를 보여 준다. 표적 표시가 있는 상자가 눌러야 할 켜진 버튼이다.

게임에서 화면이 이어진 순서를 전사(transcription)라고 한다.

작곡가 Jaeha Koo가 N-beat의 새 곡을 만들었다. 당신은 이 곡의 전사를 만들려고 한다.

곡에는 BB개의 박자가 있으므로 전사는 BB개의 화면으로 이루어진다. 제한이 없다면 가능한 전사는 모두 (2xy)B(2^{xy})^B개다.

전사마다 난이도가 다르다. 버튼은 손가락 하나로 하나씩 누르므로, 켜진 버튼이 많은 화면일수록 어렵다. 켜진 버튼이 10개를 넘는 화면은 성공적으로 누르기가 매우 어렵다. 인접한 화면에 켜진 버튼이 많아도 게임이 어려워진다. 예를 들어 켜진 버튼이 각각 7개와 6개인 연속 두 화면은, 2개와 8개인 두 화면보다 더 어려울 수 있다.

관대한 전사 작성자로서 당신은 켜지는 버튼 수에 제한을 두기로 했다. 제한은 세 개의 음이 아닌 정수 p1p_1, p2p_2, p3p_3로 주어진다. p1p_1은 어떤 화면에서든 켜진 버튼의 최대 개수다. p2p_2는 연속된 두 화면에서 켜진 버튼의 최대 개수다. p3p_3는 연속된 세 화면에서 켜진 버튼의 최대 개수다. 위 그림의 4개 화면은 켜진 버튼이 각각 4, 8, 6, 8개이므로, 이 전사는 p1≥8p_1 \ge 8, p2≥14p_2 \ge 14, p3≥22p_3 \ge 22일 때만 유효하다.

당신의 과제는 주어진 xx, yy, BB, p1p_1, p2p_2, p3p_3에 대해 가능한 전사의 수를 세는 것이다. 결과가 매우 클 수 있으므로 109+710^9 + 7로 나눈 나머지를 구한다.

입력

입력은 TT개의 테스트 케이스로 이루어진다. 첫 줄에 TT가 주어진다.

각 테스트 케이스는 공백으로 구분된 여섯 정수로 이루어진 한 줄이다. 순서대로 xx, yy (1≤x,y≤10001 \le x, y \le 1000), BB (1≤B≤1091 \le B \le 10^9), p1p_1 (0≤p1≤100 \le p_1 \le 10), p2p_2 (0≤p2≤200 \le p_2 \le 20), p3p_3 (0≤p3≤300 \le p_3 \le 30)이다.

출력

각 테스트 케이스마다 가능한 전사의 수를 109+710^9 + 7로 나눈 나머지를 한 줄에 출력한다.

예제1

  1. 예제 1

    입력
    2
    2 2 3 4 8 11
    1 1 10 1 2 3
    
    예상 출력
    4095
    1024