-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path1160.cpp
More file actions
72 lines (60 loc) · 2.34 KB
/
1160.cpp
File metadata and controls
72 lines (60 loc) · 2.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include<iostream>
#include<string>
#include<map>
#include<vector>
int countCharacters(std::vector<std::string>& words, std::string chars) {
std::map<char, int> charCount;
bool check = true;
int sum = 0;
// std::unordered_map<char, int> charCount;
for(const auto& c : chars) {
++charCount[c];
}
for(const auto& word : words) {
std::map<char, int> wordCount;
for(const auto& ch : word) {
++wordCount[ch];
}
check = true;
for(const auto& ch : wordCount) {
if(charCount[ch.first] < ch.second) {
check = false;
break;
}
}
if(check) {
sum += word.size();
}
}
return sum;
}
int main() {
std::vector<std::string> words = { "cat","bt","hat","tree" };
std::string chars = "atach";
// std::vector<std::string> words = {
// "dyiclysmffuhibgfvapygkorkqllqlvokosagyelotobicwcmebnpznjbirzrzsrtzjxhsfpiwyfhzyonmuabtlwin",
// "ndqeyhhcquplmznwslewjzuyfgklssvkqxmqjpwhrshycmvrb",
// "ulrrbpspyudncdlbkxkrqpivfftrggemkpyjl",
// "boygirdlggnh",
// "xmqohbyqwagkjzpyawsydmdaattthmuvjbzwpyopyafphx",
// "nulvimegcsiwvhwuiyednoxpugfeimnnyeoczuzxgxbqjvegcxeqnjbwnbvowastqhojepisusvsidhqmszbrnynkyop",
// "hiefuovybkpgzygprmndrkyspoiyapdwkxebgsmodhzpx",
// "juldqdzeskpffaoqcyyxiqqowsalqumddcufhouhrskozhlmobiwzxnhdkidr",
// "lnnvsdcrvzfmrvurucrzlfyigcycffpiuoo",
// "oxgaskztzroxuntiwlfyufddl",
// "tfspedteabxatkaypitjfkhkkigdwdkctqbczcugripkgcyfezpuklfqfcsccboarbfbjfrkxp",
// "qnagrpfzlyrouolqquytwnwnsqnmuzphne",
// "eeilfdaookieawrrbvtnqfzcricvhpiv",
// "sisvsjzyrbdsjcwwygdnxcjhzhsxhpceqz",
// "yhouqhjevqxtecomahbwoptzlkyvjexhzcbccusbjjdgcfzlkoqwiwue",
// "hwxxighzvceaplsycajkhynkhzkwkouszwaiuzqcleyflqrxgjsvlegvupzqijbornbfwpefhxekgpuvgiyeudhncv",
// "cpwcjwgbcquirnsazumgjjcltitmeyfaudbnbqhflvecjsupjmgwfbjo",
// "teyygdmmyadppuopvqdodaczob",
// "qaeowuwqsqffvibrtxnjnzvzuuonrkwpysyxvkijemmpdmtnqx",
// };
//
// // std::string chars = "avyteswqppomeojxoybotzriuvxolmllevluauwb";
// std::string chars = "usdruypficfbpfbivlrhutcgvyjenlxzeovdyjtgvvfdjzcmikjraspdfp";
std::cout << countCharacters(words, chars);
std::cin.get();
}