Skip to content

Commit 8b9bc19

Browse files
authored
Add LetCode 1684 cpp, java, cs (Tahanima#89)
1 parent e945ff5 commit 8b9bc19

File tree

3 files changed

+79
-0
lines changed

3 files changed

+79
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
class Solution {
2+
public:
3+
int markCharacters(string &word) {
4+
int marked = 0;
5+
6+
for (char ch : word) {
7+
int position = ch - 'a';
8+
marked |= 1 << position;
9+
}
10+
11+
return marked;
12+
}
13+
14+
int countConsistentStrings(string allowed, vector<string>& words) {
15+
int markedAllowed = markCharacters(allowed);
16+
int answer = 0;
17+
18+
for (string word : words) {
19+
int markedWord = markCharacters(word);
20+
21+
if ((markedWord & markedAllowed) == markedWord)
22+
answer++;
23+
}
24+
25+
return answer;
26+
}
27+
};
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
public class Solution {
2+
public int MarkCharacters(String word) {
3+
int marked = 0;
4+
5+
foreach (char ch in word.ToCharArray()) {
6+
int position = ch - 'a';
7+
marked |= 1 << position;
8+
}
9+
10+
return marked;
11+
}
12+
13+
public int CountConsistentStrings(string allowed, string[] words) {
14+
int markedAllowed = MarkCharacters(allowed);
15+
int answer = 0;
16+
17+
foreach (String word in words) {
18+
int markedWord = MarkCharacters(word);
19+
20+
if ((markedWord & markedAllowed) == markedWord)
21+
answer++;
22+
}
23+
24+
return answer;
25+
}
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
class Solution {
2+
public int markCharacters(String word) {
3+
int marked = 0;
4+
5+
for (char ch : word.toCharArray()) {
6+
int position = Character.getNumericValue(ch);
7+
marked |= 1 << position;
8+
}
9+
10+
return marked;
11+
}
12+
13+
public int countConsistentStrings(String allowed, String[] words) {
14+
int markedAllowed = markCharacters(allowed);
15+
int answer = 0;
16+
17+
for (String word : words) {
18+
int markedWord = markCharacters(word);
19+
20+
if ((markedWord & markedAllowed) == markedWord)
21+
answer++;
22+
}
23+
24+
return answer;
25+
}
26+
}

0 commit comments

Comments
 (0)