#刷题交流# 小C的构造字母串挑战 1. 首先判断是否可能构造出合法字符串:
如果a的数量超过k*(b的数量+1),那么无论如何都会出现超过k个连续的'a'
同样,如果b的数量超过k*(a的数量+1),那么无法避免超过k个连续的'b'
2. 使用贪心策略构造字符串:
优先尝试放置'b',因为'b'的字典序更大
只有在以下情况才放置'a':
当前已有k个连续的'b'
或者剩余的'b'不足以分配到剩余位置(避免最后剩下太多'a')
3. 维护连续字符的计数:
每次添加字符时更新consecutive_count
如果添加的字符与前一个不同,重置计数为1
展开
评论