Cod sursa(job #1695312)

Utilizator Vasile_RotaruVasea Rotaru Vasile_Rotaru Data 26 aprilie 2016 21:35:01
Problema Abc2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#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;
}