Submission #55435

#TimeUsernameProblemLanguageResultExecution timeMemory
55435DiuvenToilets (JOI16_toilets)C++11
100 / 100
27 ms908 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> pii; const int MX=200010, inf=2e9; ll n, m; void NOPE(){ cout<<-1; exit(0); } int main(){ ios::sync_with_stdio(0); cin.tie(0); cin>>n>>m; ll mn=0, sum=0; char S[MX]={}; ll k; for(int i=1; i<=m; i++){ cin>>(S+1)>>k; ll now=0, low=0; for(int i=1; S[i]!=0; i++){ now+=(S[i]=='M' ? 1 : -1); low=min(low, now); } mn=min({mn, sum+low, sum+low+now*(k-1)}); sum+=now*k; } if(sum>0) NOPE(); if(sum==mn) cout<<0; else cout<<sum-1-mn; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...