fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <array>
  4. #include <set>
  5. #include <utility>
  6. #include <cstdint>
  7. #include <algorithm>
  8. #include <stack>
  9. #include <string>
  10. #include <thread>
  11. #include <chrono>
  12. #include <numeric>
  13. #include <unordered_map>
  14. using namespace std;
  15. #define vi vector<int>
  16. template <typename T>
  17. ostream &operator<<(ostream &os, vector<T> &v)
  18. {
  19. for (auto &i : v)
  20. os << i << ' ';
  21. return os;
  22. }
  23. template <typename T>
  24. istream &operator>>(istream &is, vector<T> &v)
  25. {
  26. for (auto &i : v)
  27. is >> i;
  28. return is;
  29. }
  30.  
  31. void alaa()
  32. {
  33.  
  34. string s;
  35. cin >> s;
  36. int q;
  37. cin >> q;
  38. vi prefix(s.size()+1);
  39. for (int i = 1; i <= s.size(); i++)
  40. {
  41. prefix[i] = prefix[i - 1] + (s[i - 1] == 'a');
  42. }
  43.  
  44.  
  45. while (q--)
  46. {
  47. int l, r;
  48. cin >> l >> r;
  49. int ans = prefix[r] - prefix[l - 1];
  50. cout << ans << "\n";
  51. }
  52. }
  53.  
  54. int32_t main()
  55. {
  56. ios_base::sync_with_stdio(false);
  57. cin.tie(nullptr);
  58. int t = 1;
  59. while (t--)
  60. alaa();
  61.  
  62. return 0;
  63. }
  64.  
Success #stdin #stdout 0.01s 5320KB
stdin
Standard input is empty
stdout
Standard output is empty