力扣1963.使字符串平衡的最小交换次数

力扣1963.使字符串平衡的最小交换次数

  • 把所有匹配的消了

    • 剩下的一定是k个' [ '和k个' ] '的组合
    • k为偶数 则res = k / 2;
    • k为奇数 则res = (k-1)/2 + 1;
cpp 复制代码
  class Solution {
  public:
      int minSwaps(string s) {
          int cnt=0;
          for(char c:s)
          {
              if(c == ']')
              {
                  if(cnt > 0) 
                      cnt--;
              }
              else
                  cnt++;
          }
          cout<<cnt<<endl;
          return cnt % 2 + cnt / 2;
      }
  };
相关推荐
似水এ᭄往昔几秒前
【C++】--AVL树的认识和实现
开发语言·数据结构·c++·算法·stl
程序员zgh7 分钟前
常用通信协议介绍(CAN、RS232、RS485、IIC、SPI、TCP/IP)
c语言·网络·c++
栀秋66610 分钟前
“无重复字符的最长子串”:从O(n²)哈希优化到滑动窗口封神,再到DP降维打击!
前端·javascript·算法
xhxxx11 分钟前
不用 Set,只用两个布尔值:如何用标志位将矩阵置零的空间复杂度压到 O(1)
javascript·算法·面试
有意义13 分钟前
斐波那契数列:从递归到优化的完整指南
javascript·算法·面试
暗然而日章17 分钟前
C++基础:Stanford CS106L学习笔记 8 继承
c++·笔记·学习
有点。36 分钟前
C++ ⼀级 2023 年06 ⽉
开发语言·c++
charlie11451419137 分钟前
编写INI Parser 测试完整指南 - 从零开始
开发语言·c++·笔记·学习·算法·单元测试·测试
mmz120743 分钟前
前缀和问题2(c++)
c++·算法
TL滕1 小时前
从0开始学算法——第十六天(双指针算法)
数据结构·笔记·学习·算法