Segregacija

시간 제한5초메모리 제한2048 MB

요약
2행 N열 격자에 빨간 공과 파란 공이 놓여 있을 때, 인접한 두 공을 맞바꾸는 질의를 처리한 뒤 파란 공이 모두 빨간 공보다 위쪽과 왼쪽에 오도록 만드는 최소 교환 횟수를 각 질의마다 구한다.
난이도

어려움10점 중 8점

유형
그리디, 누적 합, 수학, 구현
정답자
아직 제출이 없습니다

문제

Pero ima matricu s dva retka i NN stupaca. U svakom polju matrice nalazi se ili crvena ili plava kuglica. Peri je cilj presložiti kuglice u matrici na način da se sve plave kuglice nalaze „gore-lijevo“, a sve crvene „dolje-desno“. Preciznije, nakon preslagivanja ne smije postojati crvena kuglica koja se nalazi iznad ili lijevo od neke plave kuglice.

Da bi Pero postigao svoj cilj, neki broj puta će zamijeniti neke dvije susjedne kuglice. Pri tome, kuglice se smatraju susjednima ako njihova pripadna polja u matrici dijele stranicu. Peru zanima minimalan broj potrebnih zamjena da dođe do željenog rasporeda.

Dodatno, Pero će QQ puta zamijeniti neke dvije susjedne kuglice u matrici te ga nakon svake promjene zanima odgovor za trenutno stanje matrice. Pomozite Peri te ispišite odgovor za početnu matricu te nakon svake promjene.

입력

U prvom su retku brojevi NN i QQ, broj stupaca u matrici i broj promjena koje je Pero napravio.

U sljedeća dva retka nalazi se opis Perine matrice. Svaki redak sastoji se od NN znakova C ili P koji predstavljaju crvenu ili plavu kuglicu.

Svaki od sljedećih QQ redaka sadrži tri prirodna broja tt, xx, yy (1≤t≤21 ≤ t ≤ 2, 1≤x≤21 ≤ x ≤ 2, 1≤y≤N1 ≤ y ≤ N), koji predstavljaju provedene zamjene redom. Ako je t=1t = 1, zamjenjuju se susjedna polja (x,y)(x, y) i (x,y+1)(x, y + 1), a ako je t=2t = 2 zamjenjuju se susjedna polja (x,y)(x, y) i (x+1,y)(x + 1, y). Garantirano je da se oba ta polja nalaze unutar matrice.

출력

Ispišite Q+1Q + 1 redaka. Redom za i=0,1,…,Qi = 0, 1, \dots , Q ispišite minimalan broj potrebnih zamjena do željenog rasporeda nakon ii promjena.

힌트

Pojašnjenje prvog probnog primjera:

Jedan primjer optimalnog niza zamjena prije promjena je sljedeći: (1,1)<->(2,1),(1,3)<->(1,4),(1,4)<->(2,4).

예제3

  1. 예제 1

    입력
    5 2
    CPCPC
    PCCPC
    1 1 4
    1 1 2
    
    예상 출력
    3
    4
    5
    
  2. 예제 2

    입력
    5 0
    CPPCC
    PPCCP
    
    예상 출력
    4
    
  3. 예제 3

    입력
    10 7
    CCPPPCCPCP
    PPPCCCPCCC
    1 2 7
    2 1 4
    2 1 8
    1 1 9
    2 1 1
    1 2 7
    1 1 4
    
    예상 출력
    8
    9
    10
    10
    9
    8
    7
    8