Advertisement
Guest User

Untitled

a guest
Feb 25th, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.51 KB | None | 0 0
  1. typedef long long ll;
  2. struct VK
  3. {
  4. map<char, VK> childs;
  5. ll uses = 0, depth = 0;
  6.  
  7. void operator =(ll a)
  8. {
  9. depth = a;
  10. }
  11. void add(string& str)
  12. {
  13. if (str.size() == depth) return;
  14. char c = str[depth];
  15. childs[c] = depth + 1;
  16. childs[c].uses++;
  17. childs[c].add(str);
  18. }
  19.  
  20. ll check(string& str)
  21. {
  22. if (depth == str.size() && childs.size() > 0) return (-10e6);
  23. char c = str[depth];
  24. if (str.size() == depth) return (uses == 1);
  25. return (childs[c].check(str) + (uses == 1));
  26. }
  27. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement