Pagini recente » Cod sursa (job #44538) | Cod sursa (job #424774) | Cod sursa (job #192105) | Cod sursa (job #1478951) | Cod sursa (job #1695312)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("abc2.in");
ofstream fout("abc2.out");
string s,s1;
int k=0,i,l,l1,x,p[21];
unordered_map<int,int>Hash;
int main()
{
fin>>s;
l=s.length();
p[0]=1;
for(i=1;i<21;++i)p[i]=p[i-1]*5;
while(fin>>s1)
{
x=0;
l1=s1.length();
for(i=0;i<l1;++i)x=x+(s1[i]-'a')*p[i];
Hash[x]=1;
}
x=0;
for(i=0;i<l1;++i)x+=((s[i]-'a')*p[i]);
k+=Hash[x];
for(i=l1;i<l;++i)
{
x=x/5+(s[i]-'a')*p[l1-1];
k+=Hash[x];
}
fout<<k;
return 0;
}