拼写名字(33-3)
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目背景
在一次明信片创作活动中,手工艺术家新新想要为她的两位好友制作精美的明信片。她打算用剪报的方式,将报纸上的字母拼贴成她们的名字,并将其首字母大写以示醒目和庄重。
题目描述
新新的两位好友名字分别是 A 和 B,这两个名字均由小写英文字母组成。她从报纸上剪下了一些字母(每个字母只能用一次),想要拼出这两位好友名字的“首字母大写”形式——即名字的第一个字母要大写,其余字母保持原样。
现在,新新想知道:是否可以恰好使用剪下来的所有字母(不能多用也不能少用,且不能添加额外字母),拼出 A 和 B 的首字母大写形式?
输入格式
输入共三行:
第一行:字符串 A,表示第一位好友的名字(全部小写)。
第二行:字符串 B,表示第二位好友的名字(全部小写)。
第三行:字符串 S,表示剪下来的所有字母(包含大小写字母)。
输出格式
如果可以恰好组成 A 和 B 的首字母大写形式,输出 Yes;否则输出 No。
样例
qingcheng
miantiao
MianQingtiaocheng
Yes
alice
bob
Bobalice
No
样例解释
样例1中,将 “qingcheng” 首字母大写得到 “Qingcheng”,将 “miantiao” 首字母大写得到 “Miantiao”。恰好可以用剪报的 “MianQingtiaocheng” 中的所有字母(包括大小写)拼出这两个名字,且没有多余或缺少的字母,所以输出 Yes。
样例2中,剪报字母总量与拼出 “Alice” 和 “Bob” 所需的字母不完全匹配,故输出 No。
数据范围
- 1 ≤ |A|, |B| ≤ 10^6
- 1 ≤ |S| ≤ 2×10^6
- A、B 仅由小写英文字母组成
- S 仅由大小写英文字母组成
时间复杂度要求:O(|S| + |A| + |B|),即可在规定范围内通过。