Advertisement
uzimane_

поиск в массиве строк

Jul 10th, 2020
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <cmath>
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8. freopen("input.txt", "r", stdin);
  9. freopen("output.txt", "w", stdout);
  10.  
  11. int n, k, l, r, m, le = 0, lec = 0;
  12. cin >> n;
  13. string c;
  14. string* mas = new string[n];
  15. for (int i = 0; i < n; i++)
  16. {
  17. cin >> mas[i];
  18. }
  19. cin >> k;
  20.  
  21. for (int s = 0; s < k; s++)
  22. {
  23. l = 0;
  24. r = n - 1;
  25. cin >> c;
  26.  
  27.  
  28. while (l - r < 0)
  29. {
  30. m = (l + r + 1) / 2;
  31. if (mas[m] <= c)
  32. {
  33. l = m;
  34. }
  35. else
  36. {
  37. r = m - 1;
  38. }
  39. }
  40. if (mas[l] == c)
  41. {
  42. cout << l + 1 << " ";
  43. }
  44. else
  45. {
  46. cout << -1 << " ";
  47. }
  48. }
  49.  
  50.  
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement