electicode
ГлавнаяКурсыРесурсыЗадачи
Все задачи
Khimio
Khayyam Finals 2025

Круговые рукопожатия

1 сОграничение времени
256 МБОграничение памяти
Все решения

Описание задачи

Есть NNN человек, стоящих в круге, пронумерованных от 111 до NNN. Для каждого человека iii (1≤i≤N1 \le i \le N1≤i≤N) задано направление Si∈{L, и целевое количество рукопожатий . Процесс состоит из ходов, выполняемых в порядке .

Хочешь решить?

Войди, напиши код прямо здесь и сразу увидишь результат.

Войти

electicode© 2026. Все права защищены.

Оформление
R}S_i \in \{L, R\}
Si​∈{L,R}
AiA_iAi​
NNN
1,2,…,N1,2,\dots,N1,2,…,N

В начале каждый человек сделал 000 рукопожатий. Обозначим HjH_jHj​ как текущее общее количество рукопожатий человека jjj в любой момент времени. На iii-ом ходе:

  • Если Hi≥AiH_i \ge A_iHi​≥Ai​, iii-й человек ничего не делает в этот ход.
  • В противном случае iii-й человек покидает свое место и начинает двигаться по кругу в направлении, заданном SiS_iSi​:
    • Если Si=LS_i = LSi​=L, он движется против часовой: сначала к человеку i−1i-1i−1, затем i−2i-2i−2 и так далее. Достигнув человека 111, продолжает от человека , затем и так далее.

Посещая людей по одному в этом порядке, каждый раз, когда он встречает человека x≠ix \ne ix=i и всё ещё имеет Hi<AiH_i < A_iHi​<Ai​, он выполняет рукопожатие с xxx (это увеличивает как HiH_iHi​, так и HxH_xHx​ на 111). Он продолжает, пока Hi=AiH_i = A_iHi​=Ai​, затем возвращается на своё исходное место.

Примечание. Цель AiA_iAi​ относится к общему количеству рукопожатий для человека iii. Рукопожатия, полученные во время ходов других людей, учитываются в HiH_iHi​. Если к началу хода iii Hi≥AiH_i \ge A_iHi​≥Ai​, человек iii полностью пропускает свой ход.

Определите окончательное количество рукопожатий H1,H2,…,HNH_1, H_2, \ldots, H_NH1​,H2​,…,HN​ после завершения всех NNN ходов.

Формат Ввода

Первая строка содержит одно целое число N (2≤N≤5⋅105)N \ (2 \leq N \leq 5 \cdot 10^5)N (2≤N≤5⋅105).

Вторая строка содержит одну строку, состоящую из NNN символов, S (Si∈{L,R})S \ (S_i \in \{L, R\})S (Si​∈{L,R}).

Третья строка содержит NNN целых чисел, разделенных пробелами A1,A2,…,AN (0≤Ai≤109)A_1, A_2, \ldots, A_N \ (0 \leq A_i \leq 10^9)A1​,A2​,…,AN​ (0≤Ai​≤109).

Формат Вывода

Выведите одну строку, содержащую NNN целых чисел, разделенных пробелами, ответ.

Система оценки

ПодзадачиДополнительные ограниченияБаллыТребуемые подзадачи
0Пример0-
1N=2N = 2N=210-
2Ai≤1A_i \leq 1Ai​≤110-
3N,Ai≤5⋅103N, A_i \leq 5 \cdot 10^3N,Ai​≤5⋅103220
4N≤5⋅103N \leq 5 \cdot 10^3N≤5⋅103180, 1, 3
5-400, 1, 2, 3, 4

Примеры

Пример 1
Ввод
3 RRL 1 2 2
Вывод
1 3 2
Пример 2
Ввод
4 RRLL 3 3 0 2
Вывод
3 3 2 2
Пример 3
Ввод
5 LRLRL 6 4 4 1 2
Вывод
7 5 4 3 3
NN
N
N−1N-1N−1
  • Если Si=RS_i = RSi​=R, он движется по часовой: сначала к человеку i+1i+1i+1, затем i+2i+2i+2 и так далее. Достигнув человека NNN, продолжает от человека 111, затем 222 и так далее.