思路:
直接字符串hash+STLunique乱搞
c o d e code code
#include<bits/stdc++.h>
using namespace std;
long long n, ans, lens;
char s[1510], a[1510];
long long b[11010101];
int main()
{
scanf("%s", s+1);
scanf("%s", a+1);
cin>>n;
lens=strlen(s+1);
for(long long i=1; i<=lens; i++)
{
long long x=n, y=0;
for(long long j=i; j<=lens; j++)
{
if(a[s[j]-'a'+1]=='0')
x--;
if(x<0)
break;
y=(y*131)^s[j];
b[++b[0]]=y;
}
}
sort(b+1, b+1+b[0]);
long long ans=unique(b+1, b+1+b[0])-b-1;
cout<<ans;
return 0;
}