Submission #103538

# Submission time Handle Problem Language Result Execution time Memory
103538 2019-03-31T11:14:52 Z ekrem Election (BOI18_election) C++
0 / 100
8 ms 384 KB
#include <bits/stdc++.h>
#define st first
#define nd second
#define mp make_pair
#define pb push_back
#define mod 1000000007
#define N 1000005
using namespace std;

typedef long long ll;

int n, q, m, bas, son, say, ans, top, u[N], x[N];
char a[N];

int main() {
	// freopen("in.txt", "r", stdin);
	// freopen("out.txt", "w", stdout);
	scanf("%d %s %d",&n ,a + 1 ,&q);
	while(q--){
		scanf("%d %d",&bas, &son);
		ans = say = 0;
		while(a[bas] == 'T' and bas <= son){
			bas++;
			ans++;
		}
		while(a[son] == 'T' and son >= bas){
			son--;
			ans++;
		}
		// cout << bas << " " << son << " " << ans << endl;
		m = 0;
		for(int i = bas; i <= son; i++){
			say = 0;
			int j = i;
			while(a[j] == a[i]){
				j++;
				say++;
			}
			x[++m] = say;
			// cout << say << " ";
			i = j - 1;
		}
		// cout << endl;
		top = 0;
		for(int i = 1; i <= m; i++){
			if(i%2)
				top += x[i];
			else{
				ans += max(0, x[i] - min(top, x[i + 1]));
				top -= min(top, x[i + 1]);
			}
		}
		cout << ans << endl;
	}
	return 0;
}

Compilation message

election.cpp: In function 'int main()':
election.cpp:18:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %s %d",&n ,a + 1 ,&q);
  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
election.cpp:20:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d",&bas, &son);
   ~~~~~^~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 8 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 8 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 8 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -