Super Power Of 2s

4.3

3 votes
Approved, Data Structures, Hard, Open, Trees
Problem

Maggu loves to create problems involving queries. This time ,he has created one for you.
Given an array containing n elements and maggu asked you two types of queries.

type 0 : l r
type 1 : l r

Explanation:
type 0 : add 2^1 to l th element, 2^2 to the (l+1) th element , 2^3 ot the (l+2) th element and so on upto r th element.
type 1: you are asked to print the sum of all the elements in range[l,r].

INPUT:
The first line contains the integer n denoting the size of array.This line is followed by n integers. After this line integer m is present denoting the number of queries. M lines follow each line containing the three integers the type and l and r.

OUTPUT:
For each query of type 1 print the result in a new line.

CONSTRAINTS:
1<=n<=210^5
1<=A[i]<=10^9
1<=m<=2
10^5
0<=type<=1
1<=l<=r<=n

Note:
answer to a query can be very large therefore print answer mod 10^9+7

Large I/O files so use scanf/printf instead of cin/cout.

Time Limit: 2
Memory Limit: 256
Source Limit:
Editor Image

?