牛客网 旧键盘 (20)

题目:

旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出
肯定坏掉的那些键。

思路:

首先我们要注意的点:
1.键盘的输入有大写有小写,并且大小写敏感。
2.如果这个键盘上的按键坏掉的化,那么不论是大写还是小写都不应该输出。

我们现将输入输出中的字母都提升成大写,然后创建一个 HashSet ,用来保存错误输出的字符串,然后我们在用 正常应该输出的字符串中的每一个字符看是否存在这个HashSet 中,不存在就输出。

具体实现:

import java.util.HashSet;
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            String trueString = scanner.next();
            String falseString = scanner.next();
            trueString = trueString.toUpperCase();
            falseString = falseString.toUpperCase();
            HashSet<Character> set = new HashSet<>();
            for (int i = 0; i < falseString.length(); i++) {
                set.add(falseString.charAt(i));
            }
            HashSet<Character> setPrint = new HashSet<>();
            for (int i = 0; i < trueString.length(); i++) {
                if (set.contains(trueString.charAt(i))) {
                    continue;
                }
                if (setPrint.contains(trueString.charAt(i))) {
                    continue;
                }
                System.out.print(trueString.charAt(i));
                setPrint.add(trueString.charAt(i));
            }
             
        }
    }
}

发布了140 篇原创文章 · 获赞 16 · 访问量 8649

猜你喜欢

转载自blog.csdn.net/Huwence/article/details/103336862