Submission #63540

#TimeUsernameProblemLanguageResultExecution timeMemory
63540antimirageElection (BOI18_election)C++17
28 / 100
20 ms1100 KiB
#include <iostream> #include <assert.h> #include <stdio.h> #include <iomanip> #include <utility> #include <math.h> #include <time.h> #include <vector> #include <set> #include <map> #define fr first #define sc second #define mk make_pair #define pb push_back #define sz(s) (int)s.size() #define all(s) s.begin(), s.end() using namespace std; const int N = 2005; int n, q, pref[N], suf[N], l, r, sum[N], ans, cn; string s; main() { cin >> n >> s; s = ' ' + s; for (int i = 1; i <= n; i++) pref[i] = (s[i] == 'C' ? 1 : -1) + pref[i - 1]; for (int i = n; i >= 1; i--) suf[i] = (s[i] == 'C' ? 1 : -1) + suf[i + 1]; cin >> q; while (q--) { cn = 0; ans = 0; for (int i = 1; i<= n; i++) sum[i] = 0; scanf("%d%d", &l, &r); for (int i = l; i <= r; i++) { if ( pref[i] + cn < pref[l - 1] ) { cn++; sum[l] += 1; sum[i + 1] -= 1; ans++; } } for (int i = 1; i<= n; i++) sum[i] += sum[i - 1]; cn = 0; for (int i = r; i >= l; i--) { if ( sum[i] + suf[i] < suf[r + 1] - cn) ans++, cn++; } printf("%d\n", ans); // system("pause"); } }

Compilation message (stderr)

election.cpp:27:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main()
      ^
election.cpp: In function 'int main()':
election.cpp:48:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d", &l, &r);
         ~~~~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...