Submission #775064

#TimeUsernameProblemLanguageResultExecution timeMemory
775064gun_ganElection (BOI18_election)C++17
28 / 100
3048 ms1012 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; const int MX = 5e5 + 5; int N, Q; string s; int main() { cin.tie(0); ios_base::sync_with_stdio(0); cin >> N >> s >> Q; s = '#' + s; for(int i = 1; i <= Q; i++) { int l, r; cin >> l >> r; vector<int> a, b; int cnt = 0; for(int j = l; j <= r; j++) { cnt += (s[j] == 'C' ? 1 : -1); if(cnt < 0) { cnt = 0; a.push_back(j); } } cnt = 0; for(int j = r; j >= l; j--) { cnt += (s[j] == 'C' ? 1 : -1); if(cnt < 0) { cnt = 0; b.push_back(j); } } reverse(b.begin(), b.end()); int pt = 0; for(auto x : a) { if(pt < b.size() && x >= b[pt]) pt++; } cout << (int)a.size() + b.size() - pt << '\n'; } }

Compilation message (stderr)

election.cpp: In function 'int main()':
election.cpp:44:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   44 |                   if(pt < b.size() && x >= b[pt]) pt++;
      |                      ~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...