아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

쿠키

시간 제한3초메모리 제한1024 MB

요약
각 k마다 M명의 아이가 쿠키를 하나씩 올리고 가장 단 쿠키나 가장 쓴 쿠키를 먹은 뒤 남은 쿠키의 달콤함 합을 구합니다. 입력 A는 이전 답으로 복호화됩니다.
난이도

어려움10점 중 8점

유형
시뮬레이션, 정렬, 구현
정답자
아직 제출이 없습니다

문제

쿠키 파티를 열려고 합니다! 번호가 1부터 N까지 붙은 쿠키 N개를 준비했습니다. 쿠키 ii의 달콤함은 AiA_i입니다. 번호가 1부터 M까지 붙은 아이 M명이 파티에 올 것으로 예상합니다. 아이마다 직접 만든 쿠키를 가져오며, 아이 ii가 가져오는 쿠키의 달콤함은 BiB_i입니다. 각 아이의 취향도 알고 있습니다. 아이 ii는 SiS_i가 S이면 단 쿠키를 좋아하고, SiS_i가 B이면 쓴 쿠키를 좋아합니다.

파티는 다음 순서로 진행됩니다.

  • 먼저 정수 kk가 주어지고, 쿠키 1,2,⋯ ,k1,2,\cdots,k를 테이블에 올립니다.
  • 그다음 아이 1,2,⋯ ,M1,2,\cdots,M이 이 순서대로 테이블에 옵니다. 아이 ii는 먼저 자신이 가져온 쿠키를 테이블에 올립니다. 그 뒤 단 쿠키를 좋아하면 테이블에서 가장 단 쿠키(달콤함이 가장 큰 쿠키)를 먹고, 쓴 쿠키를 좋아하면 테이블에서 가장 쓴 쿠키(달콤함이 가장 작은 쿠키)를 먹습니다. 각 아이는 정확히 쿠키 한 개를 먹으며, 자신이 가져온 쿠키를 먹을 수도 있습니다.
  • 마지막으로 테이블에 남은 쿠키를 모두 먹습니다.

아직 kk의 값을 정하지 않았습니다. 각 정수 k=1,2,⋯ ,Nk=1,2,\cdots,N에 대해, 여러분이 먹게 되는 쿠키 달콤함의 합을 구하세요.

k=ik=i에 대한 답을 구한 뒤에야 Ai+1A_{i+1}의 값을 알 수 있습니다. 자세한 내용은 입력 섹션을 참고하세요.

입력

입력은 표준 입력으로 다음 형식으로 주어집니다.

NN

A1′A'_1 A2′A'_2 ⋯\cdots AN′A'_N

MM

B1B_1 B2B_2 ⋯\cdots BMB_M

SS

여기서 Ai′A'_i는 AiA_i를 암호화한 값이고, 실제 값은 Ai=(Ai′+lastansmod  109)A_i=(A'_i+lastans \mod 10^9)로 계산합니다. lastanslastans는 i>1i>1이면 k=i−1k=i-1에 대한 답이고, i=1i=1이면 00입니다.

출력

NN개의 정수를 한 줄에 출력하세요. ii번째 정수는 k=ik=i일 때 여러분이 먹게 되는 쿠키 달콤함의 합입니다.

제한

  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • 0≤Ai≤109−10 \leq A_i \leq 10^9-1
  • 0≤Ai′≤109−10 \leq A'_i \leq 10^9-1 (이 변수의 정의는 입력 섹션을 참고하세요)
  • 1≤M≤2×1051 \leq M \leq 2 \times 10^5
  • 0≤Bi≤109−10 \leq B_i \leq 10^9-1
  • ∣S∣=M|S|=M
  • SiS_i는 S 또는 B입니다.
  • 입력의 모든 값은 정수입니다.

힌트

첫 번째 예제에서 A=(3,1,5)A=(3,1,5)입니다.

k=2k=2일 때 파티는 다음과 같이 진행됩니다.

  • 달콤함 33과 11인 쿠키 2개를 올립니다.
  • 아이 1이 달콤함 44인 쿠키를 올리고, 달콤함 11인 쿠키를 먹습니다.
  • 아이 2가 달콤함 22인 쿠키를 올리고, 달콤함 44인 쿠키를 먹습니다.
  • 여러분은 달콤함 22와 33인 쿠키를 먹습니다.

예제2

  1. 예제 1

    입력
    3
    3 999999999 0
    2
    4 2
    BS
    
    예상 출력
    2 5 9
    
  2. 예제 2

    입력
    10
    810737462 262894941 12979345 90139935 834123271 768745833 928886601 144082546 35547099 840309069
    10
    854737038 93768450 848842263 62613614 800833082 316988396 203584286 283415773 762732633 756024517
    SBSSSBSSBS
    
    예상 출력
    756024517 959608803 1243024576 1560012972 1893177483 2287313726 2503514053 3151110652 3337768403 3515845875