| 比赛 |
寒假集训5 |
评测结果 |
WAAAAAWAAW |
| 题目名称 |
省选之后 |
最终得分 |
70 |
| 用户昵称 |
梦那边的美好ME |
运行时间 |
0.101 s |
| 代码语言 |
C++ |
内存使用 |
7.40 MiB |
| 提交时间 |
2026-03-01 10:57:09 |
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
#define ll long long
ll n,m;
string s[110000];
ll k[110000],sum[110000],maxn[110000];
ll check,res,ans;
int main(){
freopen("Toilets.in","r",stdin);
freopen("Toilets.out","w",stdout);
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n>>m;
for (int i=1;i<=m;i++){
cin>>s[i]>>k[i];
for (int j=s[i].length()-1;j>=0;j--){
if (s[i][j]=='F') sum[i]--;
else sum[i]++;
maxn[i]=max(maxn[i],sum[i]);
}
check+=sum[i]*k[i];
}
if (check>0){
cout<<-1<<'\n';
return 0;
}
for (int i=m;i>0;i--){
if (sum[i]<=0){
ans=max(ans,res+maxn[i]);
}else{
ans=max(ans,res+(k[i]-1)*sum[i]+maxn[i]);
}
res+=sum[i]*k[i];
}
cout<<ans-1<<'\n';
return 0;
}
/*
5
3
FFF 1
M 5
FF 1
FFFMMMMMFF
FMMFFMMMFF
-3 5 -2
1 1 -2
*/