Multationer | 프로그래밍의 벗 PivotOJ
PivotOJ

Multationer

시간 제한: 1000ms메모리 제한: 1024MB출처: Programmeringsolympiaden 2019 — skolkvalBOJ 20836

문제

På den ännu oupptäckta exoplaneten PO-2019 består invånarnas arvsmassa av en sträng, där varje bokstav är antingen A, B eller C. Livets utveckling har gått lite snabbare där än på  jorden (exempelvis kan alla lösa programmeringsproblem redan som nyfödda). Anledningen tros vara att istället för vanliga mutationer sker "multationer", som ändrar {\em alla} förekomster av en viss bokstav samtidigt. Bokstaven byts ut mot en sträng som kan innehålla 1, 2 eller 3 bokstäver (se figuren nedan). Detta gör att längden på arvsmassan kan öka ganska snabbt.

Skriv ett program som, givet två strängar SS och TT, skriver ut den kortaste sekvensen av multationer som ändrar SS till TT. Det kommer alltid att finnas en lösning med högst 33 multationer.

입력

På första raden står strängen SS. På andra raden står strängen TT. Ingen av strängarna innehåller mer än 1010 bokstäver och varje bokstav är antingen A, B eller C.

출력

Programmet ska skriva ut en rad för varje multation, i den ordningen de sker. Varje rad ska innehålla två strängar: bokstaven som ändras, och strängen som den ändras till.

Om det finns flera optimala sekvenser kan du ange vilken som helst av dem.

예제

예제 1

입력
ABA
CBC
출력
A C

예제 2

입력
BC
CACCAB
출력
B A
C CAB
A CA

예제 3

입력
CAC
CABCACAB
출력
C AB
A CA

예제 4

입력
AABAC
AABBBBAC
출력
B BB
B BB
이 문제는 채점 준비 중입니다. 테스트 데이터가 확보되면 제출이 가능합니다.