만드는 중입니다

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

다전제 승자는?

시간 제한0.5초메모리 제한512 MB

요약
앨버트와 밥의 게임 결과 문자열 중 밥이 M승으로 시리즈를 끝내고 앨버트가 N승에 밥보다 먼저 도달하는 경우의 수를 10^9+7로 나눈 나머지로 구합니다.
난이도

보통10점 중 6점

유형
조합론, 수학
정답자
아직 제출이 없습니다

문제

Albert와 Bob은 보드 게임을 즐겨 하는데, 주로 다전제를 하여 승자를 가린다.

X선승 다전제는 최대 2X−12X-1번의 게임을 치러 먼저 XX번 이긴 사람이 승자가 되는 방식이다. 두 어린이가 하는 보드 게임에는 비기는 경우가 없다. 예를 들어 X=3X = 3이면 다음과 같은 결과가 나올 수 있다. A는 Albert가 이긴 게임, B는 Bob이 이긴 게임을 뜻한다.

  • AAA: Albert가 3승으로 다전제에서 이긴다. 4, 5게임은 필요 없으므로 진행하지 않는다.
  • BAAA, ABAA, AABA: Albert가 3승으로 이긴다. 5게임은 필요 없으므로 진행하지 않는다.
  • BBAAA, BAABA, BABAA, ABBAA, ABABA, AABBA: Albert가 3승으로 이긴다.
  • 위의 10가지 결과 외에도 A와 B를 뒤집으면 Bob이 이기는 10가지 결과가 나온다.

두 사람이 다전제를 진행한 뒤 Bob이 다음과 같이 말했다. M선승 다전제의 최종 승자는 먼저 M게임을 이긴 Bob이다. 그러나 N선승 다전제였다면 Albert가 이겼을 것이다. 즉 Albert가 먼저 N승을 했지만, Bob이 먼저 M승을 하여 최종 승자가 되었다. 물론 N<MN < M이다.

예를 들어 M=2M = 2, N=1N = 1이면 Albert가 1게임을 이기고 Bob이 나머지 두 게임을 이기는 ABB만 가능하다.

다른 예로 M=3M = 3, N=2N = 2이면 다음 세 가지 결과가 가능하다.

  • AABBB: 2선승 다전제였다면 Albert가 2게임째에 이겼을 것이다. 하지만 3선승 다전제이므로 Bob이 최종 승자가 된다.
  • ABABB: 2선승 다전제였다면 Albert가 3게임째에 이겼을 것이다. 하지만 3선승 다전제이므로 Bob이 최종 승자가 된다.
  • BAABB: 2선승 다전제였다면 Albert가 3게임째에 이겼을 것이다. 하지만 3선승 다전제이므로 Bob이 최종 승자가 된다.

입력으로 NN과 MM이 주어졌을 때, Bob이 MM승을 하여 최종 승자가 되지만 Albert가 먼저 NN승을 하게 되는 다전제 결과가 몇 가지인지 구하라. 이 수가 매우 클 수 있으므로 109+710^9+7로 나눈 나머지를 출력한다.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다.

각 테스트 케이스는 한 줄에 공백으로 구분된 두 정수 NN, MM이 주어진다.

출력

각 테스트 케이스의 정답을 한 줄에 하나씩 출력한다.

제한

  • 1≤T≤101 \le T \le 10
  • 1≤N<M≤1051 \le N < M \le 10^5

예제1

  1. 예제 1

    입력
    5
    1 2
    2 3
    1 3
    2 4
    500 1000
    
    예상 출력
    1
    3
    4
    13
    886458341