Segregacija
시간 제한5초메모리 제한2048 MB
2행 N열 격자에 빨간 공과 파란 공이 놓여 있을 때, 인접한 두 공을 맞바꾸는 질의를 처리한 뒤 파란 공이 모두 빨간 공보다 위쪽과 왼쪽에 오도록 만드는 최소 교환 횟수를 각 질의마다 구한다.
문제
Pero ima matricu s dva retka i 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 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 i , 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 znakova C ili P koji predstavljaju crvenu ili plavu kuglicu.
Svaki od sljedećih redaka sadrži tri prirodna broja , , (, , ), koji predstavljaju provedene zamjene redom. Ako je , zamjenjuju se susjedna polja i , a ako je zamjenjuju se susjedna polja i . Garantirano je da se oba ta polja nalaze unutar matrice.
출력
Ispišite redaka. Redom za ispišite minimalan broj potrebnih zamjena do željenog rasporeda nakon 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).