Cod sursa(job #1154181)

Utilizator nickulNic Kul nickul Data 26 martie 2014 00:17:23
Problema Potrivirea sirurilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
#include<string>
#include<vector>
 
using namespace std;
 
ifstream in("strmatch.in");
ofstream out("strmatch.out");
 
int main()
{
    string m,n;
    vector<int> b;
    in>>m>>n;
    int i=0,I=1,M=m.length(),N=n.length();
    while(m.at(0)!=m.at(I)) I++;
    while(i<N-M+1)
    {
        if(n.substr(i,I)==m.substr(0,I))
        {
            if(n.substr(i,M)==m) b.push_back(i);
            i+=I;
        }
        else i++;
    }
    out<<b.size()<<'\n';
    for(i=0;i<b.size()&&i<1000;i++) out<<b.at(i)<<" ";
}