Link Search Menu Expand Document

1684. Count the Number of Consistent Strings

Solution Code

C#

public class Solution {
    public int MarkCharacters(String word) {
        int marked = 0;
        
        foreach (char ch in word.ToCharArray()) {
            int position = ch - 'a';
            marked |= 1 << position;
        }
        
        return marked;
    }
    
    public int CountConsistentStrings(string allowed, string[] words) {
        int markedAllowed = MarkCharacters(allowed);
        int answer = 0;
        
        foreach (String word in words) {
            int markedWord = MarkCharacters(word);
            
            if ((markedWord & markedAllowed) == markedWord)
                answer++;
        }
        
        return answer;
    }
}

C++

class Solution {
public:
    int markCharacters(string &word) {
        int marked = 0;
        
        for (char ch : word) {
            int position = ch - 'a';
            marked |= 1 << position;
        }
        
        return marked;
    }
        
    int countConsistentStrings(string allowed, vector<string>& words) {
        int markedAllowed = markCharacters(allowed);
        int answer = 0;
        
        for (string word : words) {
            int markedWord = markCharacters(word);
            
            if ((markedWord & markedAllowed) == markedWord)
                answer++;
        }
        
        return answer;
    }
};

Java

class Solution {
    public int markCharacters(String word) {
        int marked = 0;
        
        for (char ch : word.toCharArray()) {
            int position = Character.getNumericValue(ch);
            marked |= 1 << position;
        }
        
        return marked;
    }
    
    public int countConsistentStrings(String allowed, String[] words) {
        int markedAllowed = markCharacters(allowed);
        int answer = 0;
        
        for (String word : words) {
            int markedWord = markCharacters(word);
            
            if ((markedWord & markedAllowed) == markedWord)
                answer++;
        }
        
        return answer;
    }
}

© 2023. All rights reserved.

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy