https://ac.nowcoder.com/acm/contest/53284/D
#include <bits/stdc++.h>
using namespace std;
//二维map
map<int, int> mp[3];
int main()
{
int n;
cin >> n;
for(int i = 1; i <= n; i ++ )
{
int t, num;
string s;
cin >> t >> s >> num;
if(s == "L") mp[t][0] += num;
else if(s == "R") mp[t][1] += num;
else mp[t][2] += num;
}
int f = 0;
long long res = 0;
for(auto &[x, cnt] : mp)//从cnt里取出 cnt【0】 cnt【1】 cnt【2】
{
int l = cnt[0], r = cnt[1], c = cnt[2];
if( (l >= 1 && r >= 1) || (l >= 1 && c >= 1) || (r >= 1 && c >= 1) || (c >= 2)) f = 1;
if(l > 0 || r > 0) res += max(l, r);
else res += min(c, 1);
}
if(!f) puts("-1");
else cout << res + 1 << endl;
}