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
37
38
#include <iostream>
#include <cstdio>

using namespace std;
int wzrost[500001];
long long stan[500001];
int main()
{
   int n,m;
   long long di,bi,poprzednie_koszenie=0,dni_wzrostu,suma=0;
   scanf("%d",&n);
   scanf("%d",&m);
   for(int i=1; i<=n;i++)
   {
        scanf("%d",&wzrost[i]);
   }
   for(int i=1; i<=m;i++)
   {
        scanf("%lld",&di);
        scanf("%lld",&bi);
        dni_wzrostu=di-poprzednie_koszenie;
        for(int j=1;j<=n;j++)
        {
            stan[j]=stan[j]+dni_wzrostu*wzrost[j];
            if(stan[j]>bi)
                {
                    suma+=(stan[j]-bi);
                    stan[j]=bi;
                }
        }
        poprzednie_koszenie=di;
        printf("%lld\n",suma);
        suma=0;


   }
    return 0;
}