using
System;
using
System.Collections.Generic;
class
GFG
{
static
int
query(List<
int
> pre_sum,
int
n,
int
l,
int
r,
int
val)
{
int
ans;
int
temp = 0;
if
(l > 0)
{
temp = pre_sum[l - 1];
}
ans = val * (pre_sum[r] - temp);
return
ans;
}
static
void
multiplyArray(
int
[] arr, List<Tuple<Tuple<
int
,
int
>,
int
>> q,
int
n)
{
List<
int
> pre_sum =
new
List<
int
>();
int
s = 0;
for
(
int
i = 0; i < n; i++)
{
s += arr[i];
pre_sum.Add(s);
}
foreach
(Tuple<Tuple<
int
,
int
>,
int
> i
in
q)
{
Console.WriteLine(query(pre_sum, n, i.Item1.Item1,
i.Item1.Item2, i.Item2));
}
}
static
void
Main()
{
int
[] arr = { 2, 3, 4, 2, 5, 1 };
int
n = 6;
List<Tuple<Tuple<
int
,
int
>,
int
>> q =
new
List<Tuple<Tuple<
int
,
int
>,
int
>>();
q.Add(
new
Tuple<Tuple<
int
,
int
>,
int
>(
new
Tuple<
int
,
int
>(2,4), 5));
q.Add(
new
Tuple<Tuple<
int
,
int
>,
int
>(
new
Tuple<
int
,
int
>(1,1), 4));
q.Add(
new
Tuple<Tuple<
int
,
int
>,
int
>(
new
Tuple<
int
,
int
>(1,3), -2));
multiplyArray(arr, q, n);
}
}