1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include<cstdio>
#include<algorithm>
#include<vector>
using namespace std;
int tab[5000000],tab1[5000000]={0};
int d[500001]={0},b[500000];
int main()
{
    int n,m;
    scanf("%d%d",&n,&m);
    for(int a=0;a<n;a++)
    {
        scanf("%d",&tab[a]);
    }

    for(int a=0;a<m;a++)
    {
        scanf("%d%d",&d[a+1],&b[a]);

    }
    for(int c=0;c<m;c++)
    {
        long long wynik=0;
        for(int a=0;a<n;a++)
        {
            tab1[a]+=(d[c+1]-d[c])*tab[a];
            if(tab1[a]>b[c])
            {
                wynik+=tab1[a]-b[c];
                tab1[a]=b[c];
            }
        }
        printf("%lld\n",wynik);
    }

}