leetcode-2024:考试的最大困扰度

简介: leetcode-2024:考试的最大困扰度

题目

题目链接

一位老师正在出一场由 n 道判断题构成的考试,每道题的答案为 true (用 ‘T’ 表示)或者 false (用 ‘F’ 表示)。老师想增加学生对自己做出答案的不确定性,方法是 最大化 有 连续相同 结果的题数。(也就是连续出现 true 或者连续出现 false)。

给你一个字符串 answerKey ,其中 answerKey[i] 是第 i 个问题的正确结果。除此以外,还给你一个整数 k ,表示你能进行以下操作的最多次数:

  • 每次操作中,将问题的正确答案改为 ‘T’ 或者 ‘F’ (也就是将 answerKey[i] 改为 ‘T’ 或者 ‘F’ )。

请你返回在不超过 k 次操作的情况下,最大 连续 ‘T’ 或者 ‘F’ 的数目。

示例 1:

输入:answerKey = "TTFF", k = 2
输出:4
解释:我们可以将两个 'F' 都变为 'T' ,得到 answerKey = "TTTT" 。
总共有四个连续的 'T' 。

示例 2:

输入:answerKey = "TFFT", k = 1
输出:3
解释:我们可以将最前面的 'T' 换成 'F' ,得到 answerKey = "FFFT" 。
或者,我们可以将第二个 'T' 换成 'F' ,得到 answerKey = "TFFF" 。
两种情况下,都有三个连续的 'F' 。

示例 3:

输入:answerKey = "TTFTTFTT", k = 1
输出:5
解释:我们可以将第一个 'F' 换成 'T' ,得到 answerKey = "TTTTTFTT" 。
或者我们可以将第二个 'F' 换成 'T' ,得到 answerKey = "TTFTTTTT" 。
两种情况下,都有五个连续的 'T' 。

解题

方法一:滑动窗口

参考链接

由于可以把一个窗口内的k个‘F’或者‘T’给换掉,因此可以等价于求一个包含‘F’或者‘T’的个数不超过k的最大长度窗口

class Solution {
public:
    string s;
    int n,k;
    int maxConsecutiveAnswers(string answerKey, int k) {
        s=answerKey;
        n=answerKey.size(),this->k=k;
        return max(getCount('F'),getCount('T'));
    }
    int getCount(char c){
        int res=0;
        for(int i=0,j=0,cnt=0;j<n;j++){
            if(s[j]==c) cnt++;
            while(cnt>k){
                if(s[i]==c) cnt--;
                i++;              
            }
            res=max(res,j-i+1);
        }
        return res;
    }
};


相关文章
|
3月前
|
算法 前端开发
考试的最大困扰度
考试的最大困扰度
22 0
|
2月前
L1-043 阅览室 (20 分)(在线模拟题)
L1-043 阅览室 (20 分)(在线模拟题)
28 0
LeetCode-2024 考试的最大困扰度
LeetCode-2024 考试的最大困扰度
|
4月前
|
Go
golang力扣leetcode 2024.考试的最大困扰度
golang力扣leetcode 2024.考试的最大困扰度
20 0
|
10月前
|
Cloud Native
【刷题日记】2024. 考试的最大困扰度
本次刷题日记的第 17 篇,力扣题为:67. 二进制求和 ,简单
|
10月前
|
云计算
阿里云认证的考试条件是什么?通过考试难不难?
阿里云的认证是现在信息通讯行业内的一个热门认证,很多人会通过考这门认证来获得进入阿里云的机会,或者是被阿里云的合作伙伴录取的机会。
607 1
|
11月前
|
云计算
阿里云认证多少分通过?考试难不难?
阿里云可以说是云计算行业内的龙头企业了,不仅和众多领域有所合作,而且合作的对象很多是业界大佬,进入阿里云也是很多毕业生的梦想。
|
12月前
|
存储 自然语言处理 数据可视化
Elastic认证考试大纲(7.13版本)全方位分析(难度、考试频率、得分指数、综合分析等)
Elastic认证考试大纲(7.13版本)全方位分析(难度、考试频率、得分指数、综合分析等)
|
机器学习/深度学习 人工智能 自然语言处理
阿里云的认证值不值得考?考试内容难不难?
阿里云作为目前国内排名第一的云计算厂商,证书受认可度是非常高的,获取证书后不仅可以获得在阿里任职的机会,还可以优先被阿里的合作伙伴企业录取。考试内容,每个方向都不同,考生可以根据自己需要的来选择。
|
存储 SQL 负载均衡
图数据库认证考试 NGCP 错题解析 vol.02:这 10 道题竟无一人全部答对
大概知道在错题解析未出来之前,NebulaGraph 专业技能认证 NGCP 通过率仅有 16.7%。但经过上一轮解析, 通过率上升 0.1%,现在变成了 16.8%。我们再接再厉,看下这期之后又如何……
160 0