描述
判断短字符串S中的所有字符是否在长字符串T中全部出现。请注意本题有多组样例输入。
数据范围:1\le len(S),len(T)\le200\1≤len(S),len(T)≤200 进阶:时间复杂度:O(n)\O(n) ,空间复杂度:O(n)\O(n)
输入描述:
输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。
输出描述:
如果短字符串的所有字符均在长字符串中出现过,则输出字符串”true”。否则输出字符串”false”。
示例1
输入:
bc abc
输出:
true
说明:
其中abc含有bc,输出"true"
//用Set走捷径!把短字符串的字符加入到Set中,
//把长字符的字符从Set中剔除,如果最后Set为空,则满足条件。
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
String shortstr = in.nextLine();
String longstr = in.nextLine();
Set<Character> set = new HashSet<>();
for(int i=0;i<shortstr.length();++i){
set.add(shortstr.charAt(i));
}
for(int i=0;i<longstr.length();++i){
set.remove(longstr.charAt(i));
}
System.out.println(set.size()==0);
}
}
}