2 条题解
-
0
感谢楼上题解,不过我认为可以不用转为int再放到数组里面,可以直接减去字符a后变为0-25然后再计算频率会更清楚一点,然后就是这个编辑器是markdown格式的,可以加代码块,不加代码块直接发出来会看的很头疼。总结:感谢楼上题解[花]
#include<bits/stdc++.h> using namespace std; int main() { int T; cin>>T; int Q; string s; for(int i=1; i<=T; i++) { cin>>s; // s是要匹配的字符串 cin>>Q; string zi; int len2 = s.size(); for(int j=1; j<=Q; j++) { cin>>zi; int len = zi.size(); int std[27]={0}; for(int k=0; k<len; k++) { std[zi[k] - 'a']++; } int ans=0; for(int k=0; k<len2 - len + 1; k++) { int jd[27]={0}; string judge=s.substr(k,len); for(int h=0; h<len; h++) { jd[judge[h] - 'a']++; } int flag = 1; for (int h = 0; h <= 26; h ++) { if (jd[h] != std[h]) { flag = 0; } } if (flag == 1) ans++; } cout<<ans<<endl; } } return 0; }
信息
- ID
- 196
- 时间
- 4000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 593
- 已通过
- 72
- 上传者