[BOJ 15561] 구간 합 최대? 2
View as PDF
Submit solution
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
Points:
4
Time limit:
1.0s
Memory limit:
256M
Problem types
Allowed languages
길이 N의 정수 수열 K1, K2, ..., KN과 상수 U, V가 주어진다.</p>
Q개의 쿼리가 주어지며, 그 종류는 두 가지가 있다.
- A, B가 주어지면, max(U × (Ki + Ki + 1 + ... + Kj) + V × (j - i)) (A ≤ i ≤ j ≤ B) 의 값을 구한다.
- A, B가 주어지면, KA의 값을 B으로 바꾼다.
첫 번째 줄에 정수 N과 Q, U, V가 입력된다. (1 ≤ N, Q ≤ 105, - 5 ≤ U, V ≤ 5)
두 번째 줄에 정수 K1, K2, ..., KN이 주어진다. (-102 ≤ Ki ≤ 102)
세 번째 줄부터 쿼리가 주어진다. 세 정수 C, A, B가 주어진다. (0 ≤ C ≤ 1, A, B, C는 정수)
C가 0이면 첫 번째 쿼리를, 아니면 두 번째 쿼리를 수행한다. 첫 번째 쿼리일 경우 1 ≤ A ≤ B ≤ N 이다. 두 번째 쿼리일 경우 1 ≤ A ≤ N, -102 ≤ B ≤ 102이다.
출력 형식
한 줄마다 첫 번째 쿼리의 결과값을 출력한다.
예제 입력
5 3 2 4
1 1 1 1 1
0 1 5
1 3 -2
0 1 5
예제 출력
26
20
Comments