Niestety, nie byliśmy w stanie w pełni poprawnie wyświetlić tego pliku, ponieważ nie jest zakodowany w UTF-8. Możesz pobrać ten plik i spróbować otworzyć go samodzielnie.
 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>

int main(){
	int n,m; // n - ilo�� gatunk�w traw + powierzchnia pola, m - liczba skosze� trawy
	scanf("%d %d",&n,&m);
	int a[n]; //a[i] - szybko�� wzrostu i-tego gatunku trawy
	long long int trawa[n], kg;
	for(int i=0;i<n;i++) {
		scanf("%d",&a[i]);
	}
	long int d=0,b,prev_d=0; //d -dzie�, b- wysoko�c koszenia trawy
	long long int siano[m]; //siano[i] - ilo�� siana po i-tym koszeniu
	for(int i=0;i<n;i++) {
		trawa[i]=0;
	}
	for(int i=0;i<m;i++) {
		//printf("%d\n",i);
		kg=0;
		prev_d=d;
		scanf("%ld %ld",&d,&b);
		for(int j=0;j<n;j++){
			//printf("PRE %d: %d\n",j,kg);
			//printf("Trawa: %d, D: %d, Prev_d: %d, A[j]: %d\n",trawa[j],d,prev_d,a[j]);
			trawa[j]+=(d-prev_d)*a[j];
			if(trawa[j]>b){
				kg+=trawa[j]-b;
				trawa[j]=b;
			}
			//printf("POST %d: %d\n",j,kg);
		}
		siano[i]=kg;
	}
	for(int i=0;i<m;i++){
		printf("%d\n",siano[i]);
	}
}