度小满9.8笔试第一题

#include

using namespace std;

int main() {
    long long int n, k;
cin >> n >> k;

    string s;
cin >> s;

    long long int nA = 0;
    for (int i = 0; i < s.size(); i++) {
        if (s[i] == 'A') {
            nA++;
        }
    }

    long long int times = k / nA;
    long long int cnt = times * n;
    long long int rest = k % nA;

    if (rest == 0) {
        cnt -= n;
        rest = nA;
    }

    for (int i = 0; i < s.size(); i++) {
        if (rest == 0) {
            break;
        }
        if (s[i] == 'A') {
            rest--;
        }
        cnt++;
    }

    cout << cnt;
    return 0;
}

(没超内存个人喜欢都写long long,大佬们忽略就好)
全部评论
我好像知道我错哪了。。。在rest==0的时候,我没更新rest=nA
点赞
送花
回复
分享
发布于 2023-09-08 21:12 广东

相关推荐

头像
不愿透露姓名的神秘牛友
04-17 08:56
美的 制造工艺 14*14 硕士211
点赞 评论 收藏
转发
头像
不愿透露姓名的神秘牛友
05-06 09:53
上飞院 机械工程师 22-24 硕士985
点赞 评论 收藏
转发
1 收藏 评论
分享
牛客网
牛客企业服务