Xsquare And Two Arrays

3.6

89 votes
Approved, Basic Programming, Dynamic Programming, Easy, Implementation, Open
Problem

Xsquare loves to play with arrays a lot. Today, he has two arrays named as A and B. Each array consists of N positive integers.

Xsquare has decided to fulfill following types of queries over his array A and array B.

  • 1 L R : Print the value of AL + BL+1 + AL+2 + BL+3 + ... upto Rth term.
  • 2 L R : Print the value of BL + AL+1 + BL+2 + AL+3 + ... upto Rth term.

Input

First line of input contains two space separated integers N and Q denoting the size of arrays ( A , B ) and number of queries respectively. Next N lines of input contains N space separated integers denoting array A. Next line of input contains N space separated integers denoting array B. Next Q lines of input contains Q queries (one per line). Each query has one of the above mentioned types.

Output

Output consists of Q lines, each containing answer to the corresponding query.

Constraints

  • 1 ≤ N,Q ≤ 105
  • 1 ≤ Ai,Bi ≤ 109
  • 1 ≤ L,R ≤ N
Time Limit: 5
Memory Limit: 256
Source Limit:
Explanation

Q1 : A[1] + B[2] + A[3] + B[4] + A[5] = 1 + 4 + 3 + 2 + 5 = 15 Q2 : B[1] + A[2] + B[3] + A[4] + B[5] = 5 + 2 + 3 + 4 + 1 = 15 Q3 : A[2] + B[3] + A[4] = 2 + 3 + 4 = 9 Q4 : B[2] + A[3] + B[4] = 4 + 3 + 2 = 9 Q5 : A[3] + B[4] + A[5] = 3 + 2 + 5 = 10

Editor Image

?