P8080 题解
学霸题,数杯架。
更好の阅读体验。
\mathbf{sol} 。
这道题我们可以把普通座位和爱心座位的总数统计起来,然后判断是否有位置就可以了。大家听到这个方法可能会疑惑爱心座位什么判断,但爱心座位一定是双数,所以把统计的爱心座位除以二再加一就可以算出空隙了,普通座位不用进行任何判断,空隙就是原数。
如果您没有听懂,让我举个例子。
假设座位是 love/2+1,我们得到爱心座位的杯架数量为
\mathbf{ac\ code} 。
#include<bits/stdc++.h>
using namespace std;
int n,ss,ll;//ss为普通座位的数量,ll为爱心座位的数量。
char s;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>s;
if(s=='S')ss++;//查询普通座位的数量。
else ll++;//查询爱心座位的数量。
}
cout<<min(ss+(ll/2+1),n);//解释一下为什么要判断最小,因为在样例 1 的情况下杯架比人多,而我们要判断多少人能使用杯座。
return 0;//华丽的结尾
}