Submission #55433

#TimeUsernameProblemLanguageResultExecution timeMemory
55433DiuvenToilets (JOI16_toilets)C++11
36 / 100
5 ms896 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; int m; void NOPE(){ cout<<-1; exit(0); } int main(){ ios::sync_with_stdio(0); cin.tie(0); cin>>n>>m; ll mcnt=0, mn=0, mtmp=0, sum=0; char S[MX]; int k; for(int i=1; i<=m; i++){ cin>>(S+1)>>k; ll now=0, low=0, cnt=0, tmp=0; for(int i=1; S[i]!=0; i++){ if(S[i]=='M'){ cnt++; now++; } else{ now--; } if(low>=now) low=now, tmp=cnt; } if(now>0){ ll gmin=sum+low; if(mn>=gmin){ mn=gmin; mtmp=mcnt+tmp; } } else{ ll gmin=sum+now*(k-1)+low; if(mn>=gmin){ mn=gmin; mtmp=mcnt+cnt*(k-1)+tmp; } } sum+=now*k; mcnt+=cnt*k; // cout<<now<<' '<<low<<' '<<cnt<<' '<<tmp<<'\n'; } if(n<mcnt) NOPE(); ll need=max(0LL, sum-1-mn); cout<<need; return 0; }

Compilation message (stderr)

toilets.cpp: In function 'int main()':
toilets.cpp:20:22: warning: variable 'mtmp' set but not used [-Wunused-but-set-variable]
     ll mcnt=0, mn=0, mtmp=0, sum=0;
                      ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...