首页 > 牛客编程巅峰赛S2第7场 - 钻石&王者T1
头像
余夕Yuel
编辑于 2020-12-09 10:26
+ 关注

牛客编程巅峰赛S2第7场 - 钻石&王者T1

简单的二分答案
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 
     * @param x string字符串 
     * @return int整型
     */
    
    bool check(const string &s, int x) {
        char c = 'a';
        int t = 0;
        for (char i : s)
            if (c <= 'c') {
                if (i == c) {
                    t++;
                    if (t == x)
                        c++, t = 0;
                }
            }
        return c == 'd';
    }
    
    int Maximumlength(string x) {
        int l = 1, r = x.size(), ans = 0;
        while (l <= r) {
            int mid = l + r >> 1;
            if (check(x, mid))
                ans = mid, l = mid + 1;
            else
                r = mid - 1;
        }
        return ans * 3;
    }
};

全部评论

(0) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期精华帖

热门推荐