讨论/题目交流/🏆 第 152 场力扣周赛/
🏆 第 152 场力扣周赛

这是 9 月的第一场周赛,欢迎小伙伴们在这里交流分享你的参赛心得以及体验。

image.png

<!-- 不懂就问,好多人的答案第四题都有一行代码是

 s[i] |= (1<<(c-'a'));
//或者是
k|=1<<words[i][j]-'a';

这行代码是作用啥的? -->

如何优化垃圾代码?



class Solution {
    List<Integer> res = new LinkedList<>();

    public List<Integer> findNumOfValidWords(String[] words, String[] puzzles) {
        for (String s : puzzles) {
            int temp = 0;
            for (String word : words) {
                if (word.contains(s.charAt(0) + "")) {
                    if (help(s, word)) {
                        temp++;
                    }
                }
            }
            res.add(temp);
        }
        return res;
    }

    private boolean help(String puzzle, String word) {
        int odd[] = new int[26];
        int New[] = new int[26];
        for (char a : puzzle.toCharArray()) {
            odd[a - 'a']++;
        }
        for (char a : word.toCharArray()) {
            New[a - 'a']++;
        }
        for (int i = 0; i < 26; i++) {
            if (odd[i]==0&&New[i]!=0) {
                return false;
            }
        }
        return true;
    }
}

超时

展开全部 19 讨论