CF56D.Changing a String
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
There is a string s , consisting of capital Latin letters. Let's denote its current length as ∣s∣ . During one move it is allowed to apply one of the following operations to it:
- INSERT pos ch — insert a letter ch in the string s in the position pos ( 1<=pos<=∣s∣+1,A<=ch<=Z ). The letter ch becomes the pos -th symbol of the string s , at that the letters shift aside and the length of the string increases by 1.
- DELETE pos — delete a character number pos ( 1<=pos<=∣s∣ ) from the string s . At that the letters shift together and the length of the string decreases by 1.
- REPLACE pos ch — the letter in the position pos of the line s is replaced by ch ( 1<=pos<=∣s∣,A<=ch<=Z ). At that the length of the string does not change.
Your task is to find in which minimal number of moves one can get a t string from an s string. You should also find the sequence of actions leading to the required results.
输入格式
The first line contains s , the second line contains t . The lines consist only of capital Latin letters, their lengths are positive numbers from 1 to 1000 .
输出格式
In the first line print the number of moves k in the given sequence of operations. The number should be the minimal possible one. Then print k lines containing one operation each. Print the operations in the format, described above. If there are several solutions, print any of them.
输入输出样例
输入#1
ABA ABBBA
输出#1
2 INSERT 3 B INSERT 4 B
输入#2
ACCEPTED WRONGANSWER
输出#2
10 REPLACE 1 W REPLACE 2 R REPLACE 3 O REPLACE 4 N REPLACE 5 G REPLACE 6 A INSERT 7 N INSERT 8 S INSERT 9 W REPLACE 11 R