로지텍 MX Mechanical

아직 제출이 없습니다시간 제한5초메모리 제한1024 MB

문제

로지텍이 MX 마스터 시리즈 최초의 기계식 키보드 MX Mechanical을 출시했다. 개발자를 위해 설계된 프리미엄 무선 일루미네이티드 기계식 키보드로 6월 7일 출시 되었다. 로지텍의 강점인 유용한 소프트웨어 기능과 우수한 완성도가 돋보이는 제품이다. MX Mechanical은 로우프로파일 택타일 스위치를 탑재해 부드러우면서도 중독성있는 키감을 선사한다. 풀 사이즈와 75% 사이즈의 텐키리스 미니 두 종류로 출시되었다.

MX Mechanical은 부드러우면서도 구분감이 있는 새로운 카일 로우프로파일 택타일 (갈축) 스위치를 탑재했다. 이는 팬터그래프의 쫀쫀함과 기계식 특유의 구분감을 동시에 느낄 수 있는 독특하고 매력적인 키감을 구현하였다. 또한, 센서가 손의 움직임을 감지하면 자동으로 활성화되는 스마트 백라이트가 탑재되어 있으며, 주변 조도에 따라 밝기가 자동으로 조절된다. 다채로운 6가지의 몰입형 백라이트 효과를 제공해 작업에 몰입감을 더해준다.

게다가, 백라이트를 켠 상태라면 최대 15일, 백라이트를 끄면 최대 10개월 동안 사용 가능하고, 이는 USB-C 포트로 충전할 수 있다. 보안성과 연결성이 강화된 로지텍의 새로운 무선 기술 Logi Bolt가 적용되었고, 멀티 OS 지원, 최대 3대 기기 페어링, 새로운 단축키 등 수많은 기능들이 개발자들의 생산성에 맞춤화되어 설계되었다.

준원이는 로지텍 MX Mechanical의 쫀쫀하고 새로운 키감을 경험하기 위해 아무 문장을 입력해보려고 한다. 준원이는 입력할 문장 SS를 머릿속으로 생각하고 있다. 준원이는 시점 1에 SS의 1번째 글자를, 시점 2에 2번째 글자를, 시점 iiii번째 글자를 입력할 것이다. 준원이는 문장 SS의 모든 글자를 입력한 다음에는 더 이상 글자를 입력하지 않을 것이다.

준원이가 커스터마이징한 MX Mechanical의 백라이트는 다음과 같이 작동한다.

  • 준원이가 시점 tt에 알파벳을 입력하면, 시점 tt에는 해당 알파벳의 백라이트가 켜진다.
    • 알파벳의 대/소문자는 구분하지 않는다.
  • 준원이가 시점 tt에 글자를 입력하지 않거나 알파벳이 아닌 글자를 입력하면, 별도로 백라이트가 켜지지 않는다.

또한,

  • 시점 tt에 켜진 백라이트는 시점 t+1t+1가 되기 전에 꺼진다.
  • 시점 tt'A', 'Z'를 제외한 알파벳 (예를 들면 'D')의 백라이트가 켜졌다면, 시점 t+1t+1에 1/2의 확률로 이전 알파벳 ('C')의 백라이트가 켜지고, 1/2의 확률로 다음 알파벳 ('E')의 백라이트가 켜진다.
    • 두 알파벳의 백라이트가 모두 켜지는 경우는 없다.
  • 시점 tt'A'의 백라이트가 켜졌다면, 시점 t+1t+1에 1/2의 확률로 'B'의 백라이트가 켜진다.
  • 시점 tt'Z'의 백라이트가 켜졌다면, 시점 t+1t+1에 1/2의 확률로 'Y'의 백라이트가 켜진다.
  • 같은 시점 tt에 한 알파벳의 백라이트가 켜지는 사건이 여러 번 일어나더라도, 한 시점에 한 알파벳의 백라이트는 한 번만 켜진다.

이 때, 다음과 같은 형태의 질문들을 해결하는 프로그램을 작성하라. 질문의 답은 정수임이 보장된다.

  • 정수 tt와 알파벳 xx가 입력으로 주어진다. 시점 tt에 알파벳 xx의 백라이트가 켜져 있을 확률이 pq\frac{p}{q}일 때, p×q1,000,000,005p \times q^{1\\,000\\,000\\,005}1,000,000,0071\\,000\\,000\\,007로 나눈 나머지를 구하여라.

입력

첫째 줄에, 준원이가 입력할 문장 SS가 주어진다.

둘째 줄에, 질문의 개수 QQ가 주어진다.

이후 QQ개의 줄에, 각 질문을 이루는 정수 tt와 알파벳 xx가 공백을 사이에 두고 주어진다.

출력

QQ개의 줄에 걸쳐서 출력한다. ii번째 줄에는, ii번째 질문에 대한 답을 출력한다.

제한

  • 문장의 길이는 11 이상 100100 이하이다.

  • 문장은 다음 문자들로만 이루어진다.

    • 알파벳 대/소문자 (아스키 코드 65-90, 97-122)
    • 공백, 쉼표, 마침표 (아스키 코드 32, 44, 46)
  • 문장이 공백으로 시작하거나, 공백으로 끝나거나, 연속된 두 개의 글자가 공백인 경우는 없다.

  • 1Q100,0001 \le Q \le 100\\,000

  • 질문을 이루는 두 변수 tt, xx는 아래 조건을 만족한다.

    • 1t1001 \le t \le 100
    • xx는 알파벳 대문자 (아스키 코드 65-90)이다.
  • 문제의 답이 정수임이 보장된다.

힌트

첫 번째로 문제를 맞힌 정답자에겐 MX Mechanical Mini 1대를 선물로 증정합니다.