蓝桥杯每日一题2023.11.25

题目描述

"蓝桥杯"练习系统 (lanqiao.cn)

题目分析

对于此题目最开始是递归想法,但发现题意中的匹配次数实际上是指在这8个字母中这8个字母每个字母对应的个数是否相同,如果相同则匹配。

此处我们可以使用subsrtr函数,每次循环截取8个字母,排序找出每个字母,输入要匹配的字符串时也是相同的操作,其中map记录此字符串的样式,以及这样相同字符串的个数

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
string s;
int n, q, ans;
map<string, int> mp; 
int main()
{
	cin >> s;
	n = s.size();
	for(int i = 0; i <= n - 8; i ++)
	{
		string a = s.substr(i, 8);
		sort(a.begin(), a.end());
		mp[a] ++;
	}
	cin >> q;
	for(int i = 1; i <= q; i ++)
	{
		cin >> s;
		sort(s.begin(), s.end());
		ans += mp[s];
	}
	cout << ans;
	return 0;
}
相关推荐
大吱佬9 小时前
面试记录自用
面试·职场和发展
Swift社区12 小时前
LeetCode 443. 压缩字符串
leetcode·职场和发展·蓝桥杯
ada7_12 小时前
LeetCode(python)——543.二叉树的直径
数据结构·python·算法·leetcode·职场和发展
sprintzer12 小时前
11.26-12.05力扣栈刷题
算法·leetcode·职场和发展
前端小白在前进13 小时前
力扣刷题:无重复字符的最长子串
算法·leetcode·职场和发展
NPE~13 小时前
面试高频——分布式事务详解
分布式·面试·职场和发展·程序员·事务·分布式事务
CoderYanger15 小时前
动态规划算法-子数组、子串系列(数组中连续的一段):21.乘积最大子数组
开发语言·算法·leetcode·职场和发展·动态规划·1024程序员节
测试199818 小时前
如何学习自动化测试?
自动化测试·软件测试·python·学习·测试工具·职场和发展·测试用例
前端小白在前进19 小时前
力扣刷题:有效的括号
算法·leetcode·职场和发展