#include <cstdio>
int main(){
long long ilosc_pol;
int liczba_dni;
int szybkosc[500000];
long long pola[500000];
long long dzien = 0;
long long dzien_new;
long long wysokosc;
int i;
long long suma;
long long licz_pol = 0;
scanf("%lld", &ilosc_pol);
scanf("%d", &liczba_dni);
while(licz_pol < ilosc_pol){
scanf("%d", &szybkosc[licz_pol]);
licz_pol++;
}
for(i = 0; i < liczba_dni; i++){
suma = 0;
scanf("%lld", &dzien_new);
scanf("%lld", &wysokosc);
licz_pol = 0;
while(licz_pol < ilosc_pol){
pola[licz_pol] += ((dzien_new-dzien)*szybkosc[licz_pol]);
if(pola[licz_pol] >= wysokosc) {
suma += (pola[licz_pol]-wysokosc);
pola[licz_pol] = wysokosc;
}
licz_pol++;
}
dzien = dzien_new;
printf("%lld\n", suma);
}
}
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 | #include <cstdio> int main(){ long long ilosc_pol; int liczba_dni; int szybkosc[500000]; long long pola[500000]; long long dzien = 0; long long dzien_new; long long wysokosc; int i; long long suma; long long licz_pol = 0; scanf("%lld", &ilosc_pol); scanf("%d", &liczba_dni); while(licz_pol < ilosc_pol){ scanf("%d", &szybkosc[licz_pol]); licz_pol++; } for(i = 0; i < liczba_dni; i++){ suma = 0; scanf("%lld", &dzien_new); scanf("%lld", &wysokosc); licz_pol = 0; while(licz_pol < ilosc_pol){ pola[licz_pol] += ((dzien_new-dzien)*szybkosc[licz_pol]); if(pola[licz_pol] >= wysokosc) { suma += (pola[licz_pol]-wysokosc); pola[licz_pol] = wysokosc; } licz_pol++; } dzien = dzien_new; printf("%lld\n", suma); } } |
English