题目描述
某星期有个比字母大小的游戏。
现在有2个人A和B,每个人都给定了一幅字母牌,我们定义输赢的规则为某个人的每一张牌都严格大于另一个人的每一张牌,这个人就胜利了。
A不知道从哪里学到的魔法,可以更改牌的字母,但是他每次只能a变b,b变c,c变d,...z不能再变了,否则会睡着。
现在A想问问聪明的你,他最少操作几次可以让自己的每张牌都大于B的每张牌。
要求实现函数
int solve(char *a,char *b)//a是A的牌,b是B的牌,返回A需要操作几次才能使得A的每张牌都大于B的每张牌,如果无论如何都不行返回-1
{
/*
如果可以,返回最小次数
否则返回-1
*/
}
只允许提交函数及其函数内容,否则编译错误
C/C++函数原型:int solve(char *a,char *b)
Java函数原型: public static int solve(String a, String b) // a, b为输入的两个串
输入
输入两行
第一行是A的牌
第二行是B的牌
牌的长度<=50,保证AB的牌的长度相等 ,全部都是小写字母
每个人的牌的字母顺序都是递增的,即 b不会出现在a的前面
输出
输出最小操作次数
如果无论如何都不行,就输出 -1
提示
必须严格大于
所以abcde需要变成bcdef才行