Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. #include <iostream>
  2. #include <windows.h>
  3. #include <string>
  4. #include <vector>
  5.  
  6. std::vector<uint64_t> keyValues;
  7. std::vector<std::string> Keys;
  8.  
  9. inline void intree(std::string key, uint64_t num, uint64_t index)
  10. {
  11. for (unsigned int i = 0; i < Keys.size(); i++)
  12. if (key == Keys[i])
  13. {
  14. keyValues[i] = num;
  15. }
  16. keyValues.insert(keyValues.begin() + index, num);
  17. Keys.insert(Keys.begin() + index, key);
  18. }
  19.  
  20. inline int outtree(const char* key, int& invKey)
  21. {
  22. for (unsigned int i = 0; i < Keys.size(); i++)
  23. {
  24. if (!strcmp(key, Keys.at(i).c_str()))
  25. {
  26. return keyValues.at(i);
  27. }
  28. }
  29. invKey = 1;
  30. printf("invalid key\n");
  31. return 0;
  32. }
  33.  
  34. int main() {
  35. std::string input = "123456789";
  36. uint64_t p_num = 123456789, keyInd = 0;
  37. std::vector<uint64_t> num;
  38. std::vector<std::string> key;
  39. while (1)
  40. {
  41. beginning:
  42. if (input == "exit")
  43. break;
  44. key.push_back(input);
  45. //std::cin >> p_num;
  46. num.push_back(p_num);
  47. intree(key.at(keyInd), num[keyInd], keyInd);
  48. keyInd++;
  49. }
  50. while (1)
  51. {
  52. start:
  53. int invalidKey = 0;
  54. std::cout << "Enter key: ";
  55. std::string input = "";
  56. std::cin >> input;
  57. if (input == "new_key")
  58. goto beginning;
  59. else if (input == "exit")
  60. break;
  61. int result = 0;
  62. result = outtree(input.c_str(), invalidKey);
  63. if (invalidKey)
  64. goto start;
  65. printf("%u\n", result);
  66. }
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement