#include <cstdio>
#include <algorithm>
using namespace std;
typedef unsigned long long int llu;
int area, num_of_mowing, x;
int * grass_grows;
llu * mowing_days;
llu * mowing_heights;
llu * grass_heights;
llu y, z, last_day, weight;
int main() {
last_day = 0;
scanf("%d %d", &area, &num_of_mowing);
grass_grows = new int[area];
grass_heights = new llu[area];
for (int i = 0; i < area; ++i){
scanf("%d", &x);
grass_grows[i] = x;
grass_heights[i] = 0;
}
mowing_days = new llu[num_of_mowing];
mowing_heights = new llu[num_of_mowing];
for (int i = 0; i < num_of_mowing; ++i){
scanf("%llu %llu", &y, &z);
mowing_days[i] = y - last_day;
last_day = y;
mowing_heights[i] = z;
}
for (int i = 0; i < num_of_mowing; ++i)
{
weight = 0;
for (int j = 0; j < area; ++j)
{
z = grass_heights[j] + (mowing_days[i] * grass_grows[j]);
if (z > mowing_heights[i]){
weight = weight + z - mowing_heights[i];
grass_heights[j] = mowing_heights[i];
} else {
grass_heights[j] = z;
}
}
printf("%llu\n", weight);
}
return 0;
}
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 | #include <cstdio> #include <algorithm> using namespace std; typedef unsigned long long int llu; int area, num_of_mowing, x; int * grass_grows; llu * mowing_days; llu * mowing_heights; llu * grass_heights; llu y, z, last_day, weight; int main() { last_day = 0; scanf("%d %d", &area, &num_of_mowing); grass_grows = new int[area]; grass_heights = new llu[area]; for (int i = 0; i < area; ++i){ scanf("%d", &x); grass_grows[i] = x; grass_heights[i] = 0; } mowing_days = new llu[num_of_mowing]; mowing_heights = new llu[num_of_mowing]; for (int i = 0; i < num_of_mowing; ++i){ scanf("%llu %llu", &y, &z); mowing_days[i] = y - last_day; last_day = y; mowing_heights[i] = z; } for (int i = 0; i < num_of_mowing; ++i) { weight = 0; for (int j = 0; j < area; ++j) { z = grass_heights[j] + (mowing_days[i] * grass_grows[j]); if (z > mowing_heights[i]){ weight = weight + z - mowing_heights[i]; grass_heights[j] = mowing_heights[i]; } else { grass_heights[j] = z; } } printf("%llu\n", weight); } return 0; } |
English