CF1295C.Obtain The String

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

You are given two strings ss and tt consisting of lowercase Latin letters. Also you have a string zz which is initially empty. You want string zz to be equal to string tt . You can perform the following operation to achieve this: append any subsequence of ss at the end of string zz . A subsequence is a sequence that can be derived from the given sequence by deleting zero or more elements without changing the order of the remaining elements. For example, if z=acz = ac , s=abcdes = abcde , you may turn zz into following strings in one operation:

  1. z=acacez = acace (if we choose subsequence aceace );
  2. z=acbcdz = acbcd (if we choose subsequence bcdbcd );
  3. z=acbcez = acbce (if we choose subsequence bcebce ).

Note that after this operation string ss doesn't change.

Calculate the minimum number of such operations to turn string zz into string tt .

输入格式

The first line contains the integer TT ( 1T1001 \le T \le 100 ) — the number of test cases.

The first line of each testcase contains one string ss ( 1s1051 \le |s| \le 10^5 ) consisting of lowercase Latin letters.

The second line of each testcase contains one string tt ( 1t1051 \le |t| \le 10^5 ) consisting of lowercase Latin letters.

It is guaranteed that the total length of all strings ss and tt in the input does not exceed 21052 \cdot 10^5 .

输出格式

For each testcase, print one integer — the minimum number of operations to turn string zz into string tt . If it's impossible print 1-1 .

输入输出样例

  • 输入#1

    3
    aabce
    ace
    abacaba
    aax
    ty
    yyt

    输出#1

    1
    -1
    3
首页