上海计算机学会2020年11月月赛C++丙组T2签到积分 | 您所在的位置:网站首页 › 每天签到的app › 上海计算机学会2020年11月月赛C++丙组T2签到积分 |
签到积分
内存限制: 256 Mb时间限制: 1000 ms 题目描述每天签到一个应用程序,至少可以得 1 分,若前一天也签到了,则当天得分为前一天的得分加 1,一天最多只能得 5 分。 给定一个由 Y 及 N 构成的字符序列,该序列表示小爱每天签到的情况,签到记为 Y,没到记为 N。请统计小爱能够获得的总积分。 输入格式一个字符序列:保证仅由字母 Y 及 N 组成。 输出格式单个整数,表示获得的积分总数。 数据范围设 n 表示字符序列的长度,1≤n≤100,000。 样例数据输入: YYNYYYYYYNNNYYY 输出: 29 说明: 第一段连续签到:1+2=3分 第二段连续签到:1+2+3+4+5+5=20分 第三段连续签到:1+2+3=6分 解析:模拟即可,详见代码: #include using namespace std; string a; int main() { cin >> a; int ans = 0; int s = 0; for (int i = 0; i < a.length(); i++) { if (a[i] == 'Y') {//如果签到 s++;//比上次签到多1分 ans += min(5, s);//最多5分 } else {//没签到 s = 0;//得分为0 } } cout |
CopyRight 2018-2019 实验室设备网 版权所有 |