Cod sursa(job #2998842)

Utilizator vladdobro07vladdd vladdobro07 Data 10 martie 2023 09:56:43
Problema Trie Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#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;
}