当前位置: 首页 > news >正文

1876. 长度为三且各字符不同的子字符串

1876. 长度为三且各字符不同的子字符串

在这里插入图片描述


C代码:滑动窗口

// 存在三种字符,且不重复、子串数量
int countGoodSubstrings(char * s){int k = 3;int hash[26] = {0};int len = 0;int l = 0;int ans = 0;for (int i = 0; i < strlen(s); ++i) {hash[s[i] - 'a']++;if (hash[s[i] - 'a'] == 1) {++len;}while (hash[s[i] - 'a'] > 1 || len > k) {hash[s[l] - 'a']--;if (hash[s[l] - 'a'] == 0) {--len;}++l;}if (len == k) {++ans;}}return ans;
}

C代码:规定了次数,一次遍历判断三个元素两两不等

// 存在三种字符,且不重复、子串数量
int countGoodSubstrings(char * s){int res = 0;int n = strlen(s);for (int i = 0; i < n - 2; ++i){if (s[i] != s[i+1] && s[i] != s[i+2] && s[i+1] != s[i+2]) {++res;}}return res;
}
http://www.lryc.cn/news/184220.html

相关文章:

  • Mall脚手架总结(一)——SpringSecurity实现鉴权认证
  • beego-简单项目写法--路径已经放进去了
  • Linux-CPU相关常用命令合集
  • vue 百度地图/天地图设置铺满屏幕100%,解决空隙问题
  • 2023年安全员安徽题库,精准题库,历年真题,模拟试题
  • 第五章:最新版零基础学习 PYTHON 教程—Python 字符串操作指南(第六节 - Python 中字符串的逻辑运算符)
  • Bark Ai 文本转语音 模型缓存位置修改
  • Docker 镜像的创建
  • 【ORM】浅聊C#和Java的ORM底层框架
  • windows redis 自启动 Redis服务无法启动报错1067问题
  • Ubuntu Server CLI专业提示
  • Centos7升级OpenSSH9.1
  • linux——信号
  • 存档&改造【03】Apex-Fancy-Tree-Select花式树的导入及学习
  • 【单片机】14-I2C通信之EEPROM
  • Mini-dashboard 和meilisearch配合使用
  • leetcode 886. 可能的二分法
  • Elasticsearch:使用 ELSER 文本扩展进行语义搜索
  • OpenRadar DOA函数 Bartlett/CBF和Capon使用
  • 二叉树--翻转二叉树
  • 强化学习环境 - robogym - 学习 - 3
  • CUDA+cuDNN+TensorRT 配置避坑指南
  • 关于PointHeadBox类的理解
  • javascript二维数组(10)ajax的使用
  • CMMI5认证哪些企业可以申请
  • 【iptables 实战】9 docker网络原理分析
  • 【多级缓存】
  • 第五课 树与图
  • 2023-10-07 事业-代号z-副业-CQ私服-调研与分析
  • 合并不同门店数据-上下合并