zoukankan      html  css  js  c++  java
  • 双端队列 C. Vasya and String

    High school student Vasya got a string of length n as a birthday present. This string consists of letters 'a' and 'b' only. Vasya denotesbeauty of the string as the maximum length of a substring (consecutive subsequence) consisting of equal letters.

    Vasya can change no more than k characters of the original string. What is the maximum beauty of the string he can achieve?

    Input

    The first line of the input contains two integers n and k (1 ≤ n ≤ 100 000, 0 ≤ k ≤ n) — the length of the string and the maximum number of characters to change.

    The second line contains the string, consisting of letters 'a' and 'b' only.

    Output

    Print the only integer — the maximum beauty of the string Vasya can achieve by changing no more than k characters.

    string s;
    int main()
    {
    int n,k;
    while(cin>>n>>k){
    cin>>s;

    int start = 0;
    int ans = 0;
    deque<int> De;
    for(int i = 0;i < s.size();i ++){
    if(s[i] == 'b') De.push_back(i);
    if(De.size() > k){
    start = De.front()+1;
    De.pop_front();
    }
    ans = max(ans,i-start+1);
    }
    De.clear();
    start = 0;
    for(int i = 0;i < s.size();i ++){
    if(s[i] == 'a') De.push_back(i);
    if(De.size() > k){
    start = De.front()+1;
    De.pop_front();
    }
    ans = max(ans,i-start+1);
    }
    cout<<ans<<endl;
    }
    return 0;
    }

  • 相关阅读:
    学习java第8课:idea新建项目
    学习java第9课:IDEA注释
    淘宝专业术语
    学习java第2课:电脑常用快捷键
    学习java第7课:初识idea
    学习java第5课:java程序运行机制
    学习java第6课:Hello,World!
    学习java第4课:java 安装卸载
    学习java第3课;dos命令
    odoo命名规范及常用函数
  • 原文地址:https://www.cnblogs.com/Aragaki/p/6930473.html
Copyright © 2011-2022 走看看