Submission #904296


Source Code Expand

#include <string>
#include <vector>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <algorithm>
#include <queue>
#include <map>
#include <set>
#include <iostream>
#include <sstream>
#include <cstring>
#include <numeric>
using namespace std;
typedef long long ll;
typedef pair<int,int> pii;
#define F0(i,n) for (int i = 0; i < n; i++)
#define F1(i,n) for (int i = 1; i <= n; i++)
#define CL(a,x) memset(x, a, sizeof(x));
#define SZ(x) ((int)x.size())
const double eps = 1e-10;
const int inf = 1000000009;
int i, j, k, m, n, l;
int ans;

string s;
char st[1000000];
int sn;

int main() {
	//freopen("x.in", "r", stdin);
	cin >> s;
	n = SZ(s);
	sn = 0;
	F0(i, n) {
		if (sn > 0 && st[sn - 1] == 'S' && s[i] == 'T') sn--;
		else st[sn++] = s[i];
	}
	cout << sn << endl;
	return 0;
}

Submission Info

Submission Time
Task A - STring
User USA
Language C++14 (GCC 5.4.1)
Score 300
Code Size 835 Byte
Status AC
Exec Time 55 ms
Memory 1152 KB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 200 / 200 100 / 100
Status
AC × 3
AC × 9
AC × 13
Set Name Test Cases
Sample example0, example1, example2
Subtask1 example0, example1, example2, sub_corner0, sub_corner1, sub_corner2, sub_rand0, handmade0, handmade1
All corner0, corner1, corner2, example0, example1, example2, handmade0, handmade1, maxrand0, sub_corner0, sub_corner1, sub_corner2, sub_rand0
Case Name Status Exec Time Memory
corner0 AC 55 ms 1152 KB
corner1 AC 9 ms 772 KB
corner2 AC 10 ms 644 KB
example0 AC 3 ms 256 KB
example1 AC 2 ms 256 KB
example2 AC 2 ms 256 KB
handmade0 AC 3 ms 256 KB
handmade1 AC 2 ms 256 KB
maxrand0 AC 10 ms 640 KB
sub_corner0 AC 3 ms 256 KB
sub_corner1 AC 3 ms 256 KB
sub_corner2 AC 3 ms 256 KB
sub_rand0 AC 3 ms 256 KB