Encrypt and Decrypt Strings LeetCode solution in C++

1
class Encrypter {
2
public:
3
unordered_set<string> dict;
4
unordered_map<char, string> en;
5
unordered_map<string, vector<char>> dy;
6

7
Encrypter(vector<char> &keys, vector<string> &values, vector<string> &dictionary) {
8
for (auto &t : dictionary) {
9
dict.insert(t);
10
}
11
for (int i = 0; i < keys.size(); i++) {
12
char c = keys[i];
13
string s = values[i];
14
en[c] = s;
15
dy[s].push_back(c);
16
}
17
}
18

19
string encrypt(string word1) {
20
string ans = "";
21
for (char c : word1) {
22
ans += en[c];
23
}
24
return ans;
25
}
26

27
int decrypt(string word2) {
28
int cnt = 0;
29
for (auto t : dict) {
30
string ans = "";
31
for (int i = 0; i < t.size(); i++) {
32
ans += en[t[i]];
33
}
34
if (ans == word2) cnt++;
35
}
36
return cnt;
37
}
38
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0