Pagini recente » Cod sursa (job #1239624) | Cod sursa (job #1947945) | Cod sursa (job #1007467) | Cod sursa (job #2671434) | Cod sursa (job #1829611)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
string pattern,omega;
vector<int> patternStart;
int cnt;
int main()
{
fin>>pattern>>omega;
std::hash<std::string> hashFunction;
if(pattern.size()>omega.size())
{
fout<<0;
return 0;
}
auto hashPattern = hashFunction(pattern);
for(int i=0;i<=omega.size()-pattern.size();i+=1)
{
string aux(omega,i,pattern.size());
auto hashAux = hashFunction(aux);
if(hashAux==hashPattern&&pattern==aux)
{
cnt+=1;
patternStart.push_back(i);
}
}
fout<<cnt<<'\n';
for(auto i:patternStart)fout<<i<<' ';
return 0;
}