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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#include <iostream>
#include <math.h>

using namespace std;
unsigned int i,j,n,m; //n-ilość gatunków m-ilość koszeń
unsigned int szybkosc_wzrostu[500000];	//szybkość wzrostu trawy

/*
unsigned int wysokosc_strzyzenia[500000];	//przycięcie trawy do długości b
unsigned int dzien_strzyzenia[500000]; //dzień strzyżenia
unsigned int wysokosc_trawy[500000];
*/

unsigned int wysokosc_strzyzenia;	//przycięcie trawy do długości b
unsigned int dzien_strzyzenia; //dzień strzyżenia
unsigned int wysokosc_trawy[500000];

unsigned long long ilosc_skoszona;
unsigned int aktualny_dzien=0,roznica_dni;
int main()
{
	
	cin >> n;
	cin >> m;

	for (i=0;i<n;i++)
	{
		cin >> szybkosc_wzrostu[i];
		wysokosc_trawy[i]=0;
	}
/* 
	for (i=0;i<m;i++)
	{
		cin >> dzien_strzyzenia[i];
		cin >> wysokosc_strzyzenia[i];
	}

 //jedziemy po koszeniach
	for (i=0;i<m;i++)
	{
		roznica_dni=dzien_strzyzenia[i]-aktualny_dzien;
		ilosc_skoszona=0;
		for (j=0;j<n;j++)
		{
// wzrost trawy
			wysokosc_trawy[j]=wysokosc_trawy[j]+(szybkosc_wzrostu[j]*roznica_dni);
// koszenie trawy
			if(wysokosc_trawy[j]>wysokosc_strzyzenia[i])
			{
				ilosc_skoszona=ilosc_skoszona+wysokosc_trawy[j]-wysokosc_strzyzenia[i];
				wysokosc_trawy[j]=wysokosc_strzyzenia[i];
			}
		}		
		cout << ilosc_skoszona << endl;

		aktualny_dzien=aktualny_dzien+roznica_dni;
	}

*/

 //jedziemy po koszeniach
	for (i=0;i<m;i++)
	{
		cin >> dzien_strzyzenia;
		cin >> wysokosc_strzyzenia;
		roznica_dni=dzien_strzyzenia-aktualny_dzien;
		ilosc_skoszona=0;
		for (j=0;j<n;j++)
		{
// wzrost trawy
			wysokosc_trawy[j]=wysokosc_trawy[j]+(szybkosc_wzrostu[j]*roznica_dni);
// koszenie trawy
			if(wysokosc_trawy[j]>wysokosc_strzyzenia)
			{
				ilosc_skoszona=ilosc_skoszona+wysokosc_trawy[j]-wysokosc_strzyzenia;
				wysokosc_trawy[j]=wysokosc_strzyzenia;
			}
		}		
		cout << ilosc_skoszona << endl;

		aktualny_dzien=aktualny_dzien+roznica_dni;
	}


//	cout << wynik;
	return 0;
}