Pagini recente » Cod sursa (job #1625512) | Cod sursa (job #118648) | Cod sursa (job #602565) | Cod sursa (job #2240343) | Cod sursa (job #2998842)
#include <iostream>
#include <vector>
using namespace std;
struct Node {
int nr_ap = 0;
int nr_cuv = 0;
vector<Node*> fii;
Node() {
fii.resize(26, nullptr);
}
};
Node* trie_insert(Node* node, const char* s) {
if (node == nullptr) {
node = new Node;
}
node->nr_ap++;
if (s[0] == '\0') {
node->nr_cuv++;
return node;
} else {
node->fii[s[0] - 'a'] =
trie_insert(node->fii[s[0] - 'a'], s + 1);
}
return node;
}
int main() {
Node* root = nullptr;
int op;
while (cin >> op) {
string s; cin >> s;
if (op == 0) {
root = trie_insert(root, s.c_str());
}
}
return 0;
}