Pagini recente » Cod sursa (job #917951) | Cod sursa (job #1814054) | Borderou de evaluare (job #831036) | Cod sursa (job #1085361) | Cod sursa (job #472499)
Cod sursa(job #472499)
#include <fstream>
#include <string>
#include <vector>
using namespace std;
char a[2000000];
char b[2000000];
vector<int> solutions;
int main()
{
ifstream f("strmatch.in");
ofstream g("strmatch.out");
f >> a >> b;
f.close();
string A(a);
string B(b);
bool isOK;
int position = 0;
do
{
isOK = false;
position = B.find(A, position);
if( position != string::npos )
{
solutions.push_back(position);
position++;
isOK = true;
}
}while(isOK);
g << solutions.size() << "\n";
for (int i = 0; i < solutions.size(); i++)
g << solutions[i] << " ";
g << "\n";
return 0;
}