关于div3codeforce round3的第一题

学习一下大佬写题解练习吧,第一次写

Monocarp 正在参加一个编程竞赛,其中有 26 个问题,从 "A "到 "Z "依次命名。问题按难度排序。此外,已知 Monocarp 能在1 分钟内解决 "A "问题,在 2 分钟内解决 "B "问题,......,在 26 分钟内解决 "Z "问题。

比赛结束后,你发现了他的比赛日志--一个由大写拉丁字母组成的字符串,其中第 i 个字母告诉了莫诺卡普在比赛的第 i 分钟里解决了哪个问题。如果莫诺卡普在某个问题上总共花费了足够的时间,那么他就解决了这个问题。请注意,莫诺卡普在解题后可能还在思考问题。

根据 Monocarp 的比赛日志,计算他在比赛中解决的问题的数量。

这个题最终要计算这个人解决的问题数,好,那我们来看有26个问题,所以可以构建一个字符串A-Z,因为是在一分钟解决'A',2分钟解决'B'依次下去,根据他写的字符串比如ACBCBC可以看出A出现一次,C出现三次,B出现两次,那么现在问题就很好解决了,我们就可以实现代码了

#include <iostream>

#include <string>

using namespace std;

int main() {

int numTests;

cin >> numTests;

// 输入测试用例的数量 for (int t = 0; t < numTests; ++t)

{ int n; cin >> n; // 输入字符串的长度

string s; cin >> s; // 输入字符串内容 int count = 0;

for (int i = 0; i < 26; ++i)

{ char c = 'A' + i;

int charCount = 0;

for (char ch : s)

{ if (ch == c) { ++charCount;

if (charCount >= i + 1)

{ ++count; break; } } } }

cout << count << endl;

// 输出符合条件的字符数量 }

return 0; }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

摸鱼di咖波

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值