Prefix Sum Queries.


Submit solution

Points: 100 (partial)
Time limit: 2.0s
Memory limit: 512M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Java, JS, Kotlin, Lisp, Lua, ObjC, OCaml, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig

Dado un arreglo de n enteros, su tarea consiste en procesar q consultas de los siguientes tipos:

  1. Actualizar el valor en la posición k a u.
  2. ¿Cuál es la suma máxima de prefijos en el rango [a,b]?

Se permiten prefijos vacíos (con suma 0).

Entrada

  • La primera línea de entrada contiene dos enteros n y q: el número de valores y consultas.
  • La segunda línea contiene n enteros x_1,x_2,\ldots,x_n: los valores del arreglo.
  • Finalmente, hay q líneas que describen las consultas. Cada línea contiene tres enteros: "1 k u" ó "2 a b".

Salida

Imprimir el resultado de cada consulta de tipo 2.

Restricciones

  • 1 \leq n,q \leq 2 \cdot 10^5
  • -10^9 \leq x_i, u \leq 10^9
  • 1 \leq k \leq n
  • 1 \leq a \leq b \leq n

Ejemplo de Entrada

8 4
1 2 -1 3 1 -5 1 4
2 2 6
1 4 -2
2 2 6
2 3 4

Ejemplo de Salida

5
2
0

Comments

There are no comments at the moment.