Pagini recente » Cod sursa (job #943580) | Istoria paginii runda/simulare_oji_2024_clasele_11_12_16_februarie | Cod sursa (job #1008630) | Cod sursa (job #251674) | Cod sursa (job #1467828)
#include <iostream>
#include <fstream>
#include <string>
#include <tr1/functional>
using namespace std;
int main()
{
ifstream f("strmatch.in");
ofstream g("strmatch.out");
int a[200000];
string n,m; int v,t=0,x=0,r;
getline(f,m);getline(f,n);
tr1 ::hash<string> hsh;
long long q=hsh(m);v=m.length();r=n.length();
for (int i=0;i<=r-v;i++){
if (q==hsh(n.substr(i,v))){
for (int j=0;j<v;j++){
if (m[j]==n[i+j]) ++t;
if (t==v) {a[x]=i;t=0;++x;}
}
}
}
g<<x<<'\n';
for (int i=0;i<x;i++){
g<<a[i]<<' ';
}
return 0;
}