力扣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;
      }
  };
相关推荐
Halo_tjn4 分钟前
Java 基于字符串相关知识点
java·开发语言·算法
念越20 分钟前
算法每日一题 Day08|双指针法解决三数之和
算法·力扣
万法若空40 分钟前
C++ <memory> 库全方位详解
开发语言·c++
黎阳之光41 分钟前
黎阳之光透明管理:视频孪生重构智慧仓储新范式
人工智能·算法·安全·重构·数字孪生
代码中介商44 分钟前
C++ 类型转换深度解析:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++
青小莫1 小时前
C++之string(OJ练习)
开发语言·c++·stl
6Hzlia1 小时前
【Hot 100 刷题计划】 LeetCode 199. 二叉树的右视图 | C++ DFS 逆序遍历
c++·leetcode·深度优先
-Marks-1 小时前
【C++编程】STL简介 --- (是什么 | 版本发展历程 | 六大组件 | 重要性缺陷以及如何学习)
开发语言·c++·学习·stl·stl版本
CappuccinoRose2 小时前
回溯法 - 软考备战(四十三)
算法·排列组合·路径·n皇后·子集·解数独·岛屿