다항식의 미분계수 (Large)

다항식을 계수와 지수 쌍으로 주면 x = 2에서의 도함숫값을 10^9+7로 나눈 나머지로 구한다.

쉬움3수학정수론구현아직 제출이 없습니다시간 제한3초메모리 제한256 MB

문제

성민이는 이번 학기에 미적분학을 듣는다. 다항함수의 미분 과제를 풀다가 손으로 미분하기가 귀찮아진 성민이는, 함수 f(x)f(x)를 넣으면 도함수 f(x)f'(x)를 대신 구해 주는 프로그램을 떠올렸다. 성민이 대신 그 프로그램의 핵심 부분을 만들어 보자.

다항식 f(x)f(x)는 항 NN개로 이루어진다. 각 항은 계수 CC와 차수 KK로 주어지고 CxKC x^K를 뜻한다. f(x)f(x)의 도함수에 x=2x = 2를 대입한 값을 구하면 된다.

입력

첫째 줄에 항의 개수 NN이 주어진다. (1N1000001 \le N \le 100000)

둘째 줄부터 NN개 줄에 걸쳐 각 항의 계수 CC와 차수 KK가 공백으로 구분되어 주어진다. (0<C1000 < C \le 100, 0K1090 \le K \le 10^9)

항은 차수와 상관없이 무작위 순서로 주어진다. 차수가 같은 항은 두 개 이상 존재하지 않는다.

출력

첫째 줄에 f(2)f'(2)109+710^9 + 7로 나눈 나머지를 출력한다.

힌트

f(x)=3x3+2x2+xf(x) = 3x^3 + 2x^2 + x를 미분하면 f(x)=9x2+4x+1f'(x) = 9x^2 + 4x + 1이다. 따라서 f(2)=9×2×2+4×2+1=45f'(2) = 9 \times 2 \times 2 + 4 \times 2 + 1 = 45이고, 45를 109+710^9 + 7로 나눈 나머지는 45다.

상수항은 미분하면 사라지므로 차수가 0인 항은 답에 아무 기여도 하지 않는다.