第十四届蓝桥杯:(二分算法)字串简写

ops/2025/3/4 21:31:31/

这道题我们的做法是开两个vector,分别把a和b字符的下标存进去,然后遍历a字符,我们要求长度必须大于等于k,我们可以画个图,也就是说b的下标减a的下标必须大于等于k-1 也就是b的下标必须大于等于a的下标+k-1  我们用二分找出b数组里面大于等于这个值最小的数的下标,然后用nb减去这个下标就是满足要求的个数了

#include <iostream>
#include <vector>
using namespace std;
typedef long long LL;
string s;
LL ret;
vector<LL> a, b;
char ca, cb;
LL k;
int main()
{cin >> k >> s >> ca >> cb;LL ns = s.size();for (int i = 0; i < ns; i++){if (s[i] == ca) a.push_back(i);else if (s[i] == cb) b.push_back(i);}LL na = a.size();LL nb = b.size();for (int i = 0; i < na; i++){LL val = a[i] + k - 1;LL left = 0, right = nb - 1;while (left < right){LL mid = (left + right) / 2;if (b[mid] >= val) right = mid;else left = mid + 1;}if (b[left] >= val)ret +=  nb- left;}cout << ret << endl;
}


http://www.ppmy.cn/ops/163125.html

相关文章

自动化测试无法启动(java.net.SocketException)

在运行测试代码,对浏览器进行自动化操作时,遇到了以下问题,添加依赖,编写了测试代码,但是程序无法运行 这个有两种原因(我使用的是谷歌浏览器): 网络问题: 因为需要从GitHub上下载对应包,所以有时候可能会出现网络问题,这个时候可以打开VPN之后,重新对程序进行启动 浏览器版本…

深入探究Python机器学习算法:无监督学习(聚类算法如 K-Means、DBSCAN,降维算法如 PCA、SVD)

文章目录 深入探究 Python 机器学习算法&#xff1a;无监督学习聚类算法K - Means聚类算法流程K值选择方法聚类结果的稳定性分析和评估方法 层次聚类算法原理和实现过程连接方法特点和适用场景可视化方法 DBSCAN密度聚类算法原理优势和局限性 降维算法主成分分析&#xff08;PC…

搜索赋能:大型语言模型的知识增强与智能提升

引言 近年来&#xff0c;大型语言模型&#xff08;LLM&#xff09;取得了显著的进展&#xff0c;并在各个领域展现出强大的能力。然而&#xff0c;LLM也存在一些局限性&#xff0c;尤其是在知识库方面。由于训练数据的局限性&#xff0c;LLM无法获取最新的知识&#xff0c;也无…

苹果与小米破冰合作:iPhone 16e全面支持Find My网络,跨生态互通实现技术性突破

2025年2月28日&#xff0c;苹果公司正式宣布其中国区特供机型iPhone 16e全面接入Find My网络升级版&#xff0c;并与小米旗舰机型15 Ultra实现跨平台互联互通。 核心功能升级 1. Find My网络能力扩展 iPhone 16e搭载的Find My 3.0网络支持亚米级定位&#xff08;误差<1米…

c++ std::forward_list使用笔记

这里写目录标题 1. 包含头文件2. 创建和初始化3. 添加元素4. 遍历元素5. 删除元素6. 其他常用操作7. 示例代码输出结果总结 std::forward_list 是 C 标准库中的一个单向链表容器。它只支持从头部到尾部的前向遍历&#xff0c;因此在某些场景下比 std::list 更加高效。以下是一些…

机器学习(五)

一&#xff0c;多类&#xff08;Multiclass&#xff09; 多类是指输出不止有两个输出标签&#xff0c;想要对多个种类进行分类。 Softmax回归算法&#xff1a; Softmax回归算法是Logistic回归在多类问题上的推广&#xff0c;和线性回归一样&#xff0c;将输入的特征与权重进行…

(十 六)趣学设计模式 之 责任链模式!

目录 一、 啥是责任链模式&#xff1f;二、 为什么要用责任链模式&#xff1f;三、 责任链模式的实现方式四、 责任链模式的优缺点五、 责任链模式的应用场景六、 总结 &#x1f31f;我的其他文章也讲解的比较有趣&#x1f601;&#xff0c;如果喜欢博主的讲解方式&#xff0c;…

netty 与 websocket

目录 1. Netty 简介 2. WebSocket 简介 3. Netty 与 WebSocket 的关系 3.1 Netty 对 WebSocket 的支持 3.2 两者的层级关系 3.3 常见误解澄清 4. Netty 的通用性体现 4.1 多协议支持 4.2 非WebSocket应用示 5. 选择Netty实现WebSocket的优势 6. 总结 1. Netty 简介 …