Pagini recente » Cod sursa (job #726108) | Cod sursa (job #1209152) | Cod sursa (job #947624) | Cod sursa (job #1364864) | Cod sursa (job #3319068)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("abc2.in");
ofstream fout("abc2.out");
unordered_map<uint64_t,int> mp;
const int base = 1315423911;
string sir,c;
inline uint64_t hashd(const string &s) {
uint64_t h=0;
for (char i:s) {
h=h*base+i;
}
return h;
}
int main() {
fin>>sir;
fin>>c;
int ws=c.size();
for (int i=0;i<=(int)sir.size()-ws;++i) {
string ss(sir,i,ws);
uint64_t key=hashd(ss);
mp[key]++;
}
long long ap=0;
uint64_t key=hashd(c);
ap+=mp[key];
mp[key]=0;
while (fin>>c) {
uint64_t key=hashd(c);
ap+=mp[key];
mp[key]=0;
}
fout<<ap;
}