CF1366G.Construct the String

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Let's denote the function f(s)f(s) that takes a string ss consisting of lowercase Latin letters and dots, and returns a string consisting of lowercase Latin letters as follows:

  1. let rr be an empty string;
  2. process the characters of ss from left to right. For each character cc , do the following: if cc is a lowercase Latin letter, append cc at the end of the string rr ; otherwise, delete the last character from rr (if rr is empty before deleting the last character — the function crashes);
  3. return rr as the result of the function.

You are given two strings ss and tt . You have to delete the minimum possible number of characters from ss so that f(s)=tf(s) = t (and the function does not crash). Note that you aren't allowed to insert new characters into ss or reorder the existing ones.

输入格式

The input consists of two lines: the first one contains ss — a string consisting of lowercase Latin letters and dots, the second one contains tt — a string consisting of lowercase Latin letters ( 1ts100001 \le |t| \le |s| \le 10000 ).

Additional constraint on the input: it is possible to remove some number of characters from ss so that f(s)=tf(s) = t .

输出格式

Print one integer — the minimum possible number of characters you have to delete from ss so f(s)f(s) does not crash and returns tt as the result of the function.

输入输出样例

  • 输入#1

    a.ba.b.
    abb

    输出#1

    2
  • 输入#2

    .bbac..a.c.cd
    bacd

    输出#2

    3
  • 输入#3

    c..code..c...o.d.de
    code

    输出#3

    3
首页