map映射的使用
函数substr的使用方法
sort里面可以写s.begin()和s.end()
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main()
{
string s;
cin>>s;
map<string,int>mp;
for(int i=0;i<s.size();i++)
{
string str=s.substr(i,8);
//从i依次往后到8
if(str.size()!=8)
break;//取不到8了就拜拜
sort(str.begin(),str.end());
//把每一次取法都排个队
mp[str]++;//相当巧妙的一个映射
}
int n;cin>>n;
int ans=0;//记录答案
for(int i=1;i<=n;i++)
{
string str;
cin>>str;
sort(str.begin(),str.end());
ans+=mp[str];
}
cout<<ans<<endl;
return 0;
}