LYA 是一家魔法糖果工厂的新任管理员。工厂生产的魔法糖果有七种颜色,分别用字母 a、b、c、d、e、f、g 表示。这些糖果被排列在一条传送带上,准备进行包装。为了提高效率,工厂引进了一台智能包装机器人。这个机器人可以按照预设的指令序列来包装糖果。指令序列由字符 a、b、c、d、e、f、g 和 * 组成。其中,a 到 g 表示机器人可以包装对应颜色的糖果,而 * 则表示机器人可以重复前一个动作任意次(包括 0 次)。
如果指令序列执行完毕,或者遇到当前无法匹配的糖果,机器人就会停止工作。LYA 想知道,按照给定的指令序列,机器人最多能包装多少个糖果。
输入格式
第一行输入一个字符串,表示传送带上𝑁个糖果的颜色序列,长度𝑁 ,N 不超过 1000。
第二行输入一个字符串,表示机器人的指令序列𝑆,𝑆的长度不超过 1000。
abbbbcdefg
abcd
7
void candyWrap() {string N; cin >> N;string S; cin >> S;char last = '*';int index = 0;for (char c: S){if (c == '*'){if (last == '*') continue;//连续多个指针while (index < N.size() && N[index] == last) ++index;//一次性将符合条件的过完}else{if (index < N.size() && N[index] != c) break;++index;}last = c;}cout << index << endl;
}