시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
어떤 대회에는 난이도 1부터 N까지의 문제를 하나씩, 총 N개 골라야 한다.
난이도가 정확히 i인 문제는 A_i개 있다. 또한 1 <= i < N인 i에 대해, 난이도가 i 또는 i+1일 수 있는 문제는 B_i개 있다. 같은 문제를 두 번 사용할 수는 없다. 난이도가 두 가지로 표현된 문제를 고른다면, 그 문제를 가능한 두 난이도 중 하나에 배정한다.
각 난이도에 배정된 실제 문제가 하나라도 다르면 서로 다른 방법으로 센다. 문제를 고르는 방법의 수를 1,000,000,007로 나눈 나머지를 구하라.
첫째 줄에 정수 N (2 <= N <= 100,000)이 주어진다.
둘째 줄에 N개의 정수 A_1, A_2, ..., A_N이 주어진다. A_i는 난이도가 정확히 i인 문제의 개수이며, 각 값은 10^9 이하의 음이 아닌 정수이다.
셋째 줄에 N-1개의 정수 B_1, B_2, ..., B_{N-1}이 주어진다. B_i는 난이도가 i 또는 i+1일 수 있는 문제의 개수이며, 각 값은 10^9 이하의 음이 아닌 정수이다.
문제를 고르는 방법의 수를 1,000,000,007로 나눈 나머지를 출력한다.