아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

ESC와 쿼리

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

요약
e^x sin x cos x를 n번 미분한 식의 계수 a_n, b_n, c_n에 대해 각 쿼리 (i, j, k)마다 x=i부터 j까지 a_{kx}+b_{kx}+c_{kx}의 합을 10^9+7로 나눈 나머지를 구한다.
난이도

보통10점 중 6점

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

문제

미분가능한 함수 ESC(x)=exsin⁡xcos⁡x\text{ESC}(x) = e^x \sin x \cos x를 nn번 미분한 결과를 ESC(n)(x)\text{ESC}^{(n)}(x)라 하자. ESC(n)(x)\text{ESC}^{(n)}(x)는 다음과 같이 표현할 수 있다.

  • ESC(n)(x)=a_nexsin⁡2x+b_nexcos⁡2x+c_nexsin⁡xcos⁡x\text{ESC}^{(n)}(x)=a\_n e^x \sin ^2 x + b\_n e^x \cos ^2 x + c\_n e^x \sin x \cos x (단, a_na\_n, b_nb\_n, c_nc\_n은 정수)

다음 쿼리를 수행하는 프로그램을 작성하시오.

  • i j k: ∑_x=ija_kx+b_kx+c_kx\sum\_{x=i}^{j} a\_{kx}+b\_{kx}+c\_{kx} 값을 출력한다. (단, ii, jj, kk는 양의 정수)

쿼리 결과의 절댓값이 매우 클 수 있으므로 쿼리의 결과를 세 정수 pp, qq, rr에 관한 식 p×q+rp \times q + r로 표현할 때, rr을 대신 출력한다. (0≤r<p=109+7)(0 \le r \lt p=10^9+7)

입력

첫 번째 줄에 쿼리의 개수 QQ가 주어진다. (1≤Q≤105)(1 \le Q \le 10^5)

두 번째 줄부터 QQ개의 줄에 걸쳐 쿼리가 주어진다. (1≤i≤j≤jk<231)(1 \le i \le j \le jk \lt 2^{31})

출력

QQ개의 줄에 각 쿼리의 정답을 순서대로 출력한다.

예제1

  1. 예제 1

    입력
    4
    1 1 1
    30 30 1
    1 30 1
    10 20 2
    
    예상 출력
    1
    109888886
    974687329
    345654312