力扣1405.最长快乐字符串

力扣1405.最长快乐字符串

  • 三个比较

    • chlen记录最多剩余字母的数量
    • xsize记录当前字符串
cpp 复制代码
  class Solution {
  public:
      string longestDiverseString(int a, int b, int c) {
          string res;
          while(a + b + c > 0)
          {
              char choose = '-';
              int chlen = 0;
              int xsize = res.size();
              //a的数量更多 并且可以放
              if(a > chlen && (xsize < 2 || res[xsize - 1] != 'a' || res[xsize - 2] != 'a'))
              {
                  chlen = a;
                  choose = 'a';
              }
              //b的数量更多 并且可以放
              if(b > chlen && (xsize < 2 || res[xsize - 1] != 'b' || res[xsize - 2] != 'b'))
              {
                  chlen = b;
                  choose = 'b';
              }
              //c的数量更多 并且可以放
              if(c > chlen && (xsize < 2 || res[xsize - 1] != 'c' || res[xsize - 2] != 'c'))
              {
                  chlen = c;
                  choose = 'c';
              }
              if(choose == '-') break;
              res.append(1,choose);
              if(choose == 'a') a--;
              else if(choose == 'b') b--;
              else if(choose == 'c') c--;
          }
          return res;
      }
  };
相关推荐
月明长歌1 分钟前
【码道初阶】Leetcode771 宝石与石头:Set 判成员 vs List 判成员(同题两种写法的差距)
java·数据结构·leetcode·list·哈希算法·散列表
xiaoyustudiowww1 分钟前
Jakarta EE 12(JAVA EE12)平台包含规范版本
java·java-ee
wniuniu_1 分钟前
ceph的参数
java·数据库·ceph
import_random2 分钟前
[算法]时间序列(介绍)
算法
wuk9986 分钟前
MATLAB中求解和分析马蒂厄方程
人工智能·算法·matlab
AC赳赳老秦7 分钟前
DeepSeek-Coder vs Copilot:嵌入式开发场景适配性对比实战
java·前端·后端·struts·mongodb·copilot·deepseek
Oxye14 分钟前
服务器内存不足导致程序没完全起起来,报错Required type must not be null
java·开发语言
2501_9167665417 分钟前
【Java】static关键字与类的加载顺序
java·开发语言
Wang2012201320 分钟前
LSTM和Transformer对比
人工智能·算法·架构
9号达人20 分钟前
支付配置时好时坏?异步方法里的对象引用坑
java·后端·面试