Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import java.math.*;
- import java.security.*;
- import java.text.*;
- import java.util.*;
- import java.util.concurrent.*;
- import java.util.regex.*;
- public class Solution {
- // Complete the arrayManipulation function below.
- static long arrayManipulation(int n, int[][] queries) {
- long a[] = new long[n + 1];
- for (int i = 0; i < queries.length; i++) {
- int start = queries[i][0];
- int end = queries[i][1];
- int value = queries[i][2];
- a[start] += value;
- if (end + 1 <= n)
- a[end + 1] -= value;
- }
- long result = 0;
- long max = -1;
- for (int i = 1; i <= n; i++) {
- result += a[i];
- if (result > max)
- max = result;
- }
- return max;
- }
- private static final Scanner scanner = new Scanner(System.in);
- public static void main(String[] args) throws IOException {
- BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH")));
- String[] nm = scanner.nextLine().split(" ");
- int n = Integer.parseInt(nm[0]);
- int m = Integer.parseInt(nm[1]);
- int[][] queries = new int[m][3];
- for (int i = 0; i < m; i++) {
- String[] queriesRowItems = scanner.nextLine().split(" ");
- scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");
- for (int j = 0; j < 3; j++) {
- int queriesItem = Integer.parseInt(queriesRowItems[j]);
- queries[i][j] = queriesItem;
- }
- }
- long result = arrayManipulation(n, queries);
- bufferedWriter.write(String.valueOf(result));
- bufferedWriter.newLine();
- bufferedWriter.close();
- scanner.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement