蓝桥杯每日一题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;
}
相关推荐
羑悻的小杀马特3 小时前
【动态规划篇】欣赏概率论与镜像法融合下,别出心裁探索解答括号序列问题
c++·算法·蓝桥杯·动态规划·镜像·洛谷·空隙法
重生之后端学习4 小时前
236. 二叉树的最近公共祖先
java·数据结构·算法·职场和发展·深度优先
2501_901147834 小时前
有序数组单一元素查找:从通用解法到算法极致优化——兼谈高性能计算基础思路
算法·面试·职场和发展
追随者永远是胜利者5 小时前
(LeetCode-Hot100)42. 接雨水
java·算法·leetcode·职场和发展·go
jimy15 小时前
小腿三头肌--人体第二心脏;踝关节屈伸环绕运动让小腿三头肌收缩,促进血液回流心脏,降低饭后血糖,减少饭困
职场和发展·程序员创富
元亓亓亓7 小时前
LeetCode热题100--76. 最小覆盖子串--困难
算法·leetcode·职场和发展
say_fall8 小时前
双指针算法详解:从原理到实战(含LeetCode经典例题)
算法·leetcode·职场和发展
追随者永远是胜利者9 小时前
(LeetCode-Hot100)33. 搜索旋转排序数组
java·算法·leetcode·职场和发展·go
hnjzsyjyj9 小时前
洛谷 P8738:[蓝桥杯 2020 国 C] 天干地支 ← string
蓝桥杯·字符串·天干地支
追随者永远是胜利者12 小时前
(LeetCode-Hot100)22. 括号生成
java·算法·leetcode·职场和发展·go