UVA287 Text Comparsion
题目描述
编写一个比较两个文本的程序。这两个文本被认为是同一文本的不同版本。两个版本之间的文本可能会发生三种不同的情况:
- 可以删除文本
- 可以插入文本。文本可以更改
- 可以改变文本
这三者的任何组合都可以同时发生。例如,移动将被视为一个地方的删除和另一个地方的插入。你应该列出从旧版本到新版本发生的所有更改。
输入格式
输入文件包含几组数据,每个组据包含两行 $teat1$ 和 $text2$ 字符串。它们包含要比较的文本的两个版本。字符串应该认为 $text2$ 是较老的版本,
并将 $text1$ 作为较新的字符串。
输出格式
对于每组测试数据,输出文件包含两个版本之间文本发生的所有删除、插入和更改,格式如下:
·删除:删除的第一个字符的位置、“已删除”一词和字符数
-删除的文本和已删除的文本。
- 插入:插入的文本的第一个字符的位置、自上次版本以来的“插入”一词、插入的字符数和插入的文本。
- 更改:更改的第一个字符的位置、“更改”一词、更改的字符数、原始文本及其更改的内容。
第一个字符的位置总是指旧版本中的位置(即teat2中的位置)。文件中的第一个字符编号为零($0$)。该程序不应区分大小写。
有关详细信息,请参阅下面的示例。打印空行在每个测试用例输出之后。
注意:输入文件中不包括位置字符的数字和行的标题。