Logo
(追記) (追記ここまで)

30056번 - C=A+B

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB113302134.426%

문제

길이가 $N$(단, $N$은 3ドル$의 배수)인 수열 $X$가 있다. 수열 $X$의 모든 원소는 $A,ドル $B,ドル $C$ 중 하나의 색깔로 칠해졌으며 한 색깔로 칠한 원소의 수는 $\frac{N}{3}$개로 모두 같다. 수열의 앞에서부터 $A$로 색칠한 원소를 순서대로 $A_1, A_2, \cdots, A_{\frac{N}{3}}$라고 정의한다. $B$와 $C$에 대해서도 같은 방식으로 $B_i,ドル $C_i$를 정의한다.

다음과 같은 쿼리를 수행하는 프로그램을 작성하자.

  • 1 i j k: 수열 $X$의 $i$번째 원소부터 $j$번째 원소까지 $k$를 더한다.
  • 2 i j: 수열 $X$의 $i$번째 원소부터 $j$번째 원소까지 $C$로 지정되어 있는 원소에 대해 $C_t = A_t + B_t$을 적용한다.
  • 3 i j: 수열 $X$의 $i$번째 원소부터 $j$번째 원소까지의 합을 출력한다.

입력

첫 번째 줄에 3ドル$의 배수인 $N$이 주어진다. $(3 \leq N \leq 300,000円)$

두 번째 줄에 정수 $X_i$가 공백으로 구분되어 순서대로 주어진다. $(1 \leq X_i \leq 100,000円)$

세 번째 줄에 A, B, C로만 이루어진 길이가 $N$인 문자열이 주어진다. 문자열의 $i$번째 문자는 $X_i$가 칠해진 색깔을 의미한다.

네 번째 줄에는 쿼리의 개수 $Q$가 주어진다. $(1 \leq Q \leq 100,000円)$

다음 $Q$개의 줄에 걸쳐 쿼리가 주어진다. $(1 \leq i \leq j \leq N;1 \leq k \leq 100,000円)$

주어지는 입력은 모두 정수다.

출력

3번 쿼리가 주어질 때마다 한 줄에 하나씩 쿼리의 결과를 출력한다.

제한

예제 입력 1

6
1 2 3 4 5 6
ABBCAC
4
1 4 6 3
3 3 5
2 4 6
3 1 6

예제 출력 1

18
28

초기 수열 $X$는 다음과 같다: $[1, 2, 3, 4, 5, 6]$

첫 번째 쿼리를 수행한 후 수열 $X$는 다음과 같이 변한다: $[1, 2, 3, 7(=4+3), 8(=5+3), 9(=6+3)]$

두 번째 쿼리를 수행한 결과는 다음과 같다: 3ドル + 7 + 8 = 18$

세 번째 쿼리를 수행한 후 수열 $X$는 다음과 같이 변한다: $[1, 2, 3, 3(=1+2), 8, 11(=3+8)]$

네 번째 쿼리를 수행한 결과는 다음과 같다: 1ドル + 2 +たす 3 +たす 3 +たす 8 +たす 11 = 28$

힌트

출처

University > 한양대학교 ERICA 캠퍼스 > Zero One Algorithm Contest 2023 L번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /