import java.util.*;
public class sia
{
public static void main(String[] argv)
{
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int m = scanner.nextInt();
int[]v = new int[n];
for(int i = 0; i < n; ++i)
{
v[i] = scanner.nextInt();
}
long[] height = new long[v.length];
long lastDay = 0;
long daysDifference;
long gathered;
long day;
long cut;
for( int j = 0; j < m; ++j )
{
day = scanner.nextLong();
cut = scanner.nextLong();
gathered = 0;
daysDifference = day - lastDay;
lastDay = day;
for(int i=0; i<height.length; ++i)
{
long newHeight = height[i] + daysDifference * v[i];
if( newHeight > cut)
{
gathered += newHeight - cut;
newHeight = cut;
}
height[i] = newHeight;
}
System.out.println(gathered);
}
}
}
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 | import java.util.*; public class sia { public static void main(String[] argv) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int m = scanner.nextInt(); int[]v = new int[n]; for(int i = 0; i < n; ++i) { v[i] = scanner.nextInt(); } long[] height = new long[v.length]; long lastDay = 0; long daysDifference; long gathered; long day; long cut; for( int j = 0; j < m; ++j ) { day = scanner.nextLong(); cut = scanner.nextLong(); gathered = 0; daysDifference = day - lastDay; lastDay = day; for(int i=0; i<height.length; ++i) { long newHeight = height[i] + daysDifference * v[i]; if( newHeight > cut) { gathered += newHeight - cut; newHeight = cut; } height[i] = newHeight; } System.out.println(gathered); } } } |
English