#P1053. Two Screens

Two Screens

题目描述

梦云有两个显示屏,初始时都为空。梦云希望两个显示屏分别显示字符串 ss 和字符串 tt 。为此,他可以进行两种操作:

操作一:任选一个字符,添加到任意一个显示屏内容的末尾。

操作二:选择一个显示屏并复制其内容,清空另一个显示屏的内容,并粘贴进去。

你需要帮助梦云计算出完成任务的最小操作数。

输入格式

共两行,第一行包含字符串 ss,第二行包含字符串 tt

保证字符串仅含有大写英文字母,且长度不超过 30003000

输出格式

一个整数, 表示让两个显示屏分别显示出 ss 串和 tt 串所需的最小操作数。

样例

GARAGE
GARAGEFORSALE
14

对于该组数据,可以先使用 66 次操作,在显示屏一中添加GARAGE六个字符。

然后使用一次复制操作,将显示屏一中的内容复制到显示屏二。

然后在显示屏二使用7次操作,在显示屏二中添加FORSALE七个字符。

总共操作次数为14.

ABCDE
AABCD
10

对于该组数据,可以先使用一次操作,在显示屏一中添加一个字符A。

然后对显示屏一使用复制操作。

然后对显示屏一使用4次操作,添加BCDE四个字符。

最后对显示屏二使用4次操作,添加ABCD四个字符。

总共操作次数为10.

TRAINING
DRAINING
16

对于该组数据,最优方案是不使用任何复制操作,分别对显示屏一添加TRAINING八个字符、对显示屏二添加DRAINING八个字符。

总共操作次数为16.