Cod sursa(job #1399026)

Utilizator alexb97Alexandru Buhai alexb97 Data 24 martie 2015 15:25:07
Problema Potrivirea sirurilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
#include <cstring>
#include <cstdlib>
#include <string>
#include <vector>
#define DIM 2000000
using namespace std;

ifstream is("strmatch.in");
ofstream os("strmatch.out");

int n, m;
char cuv[DIM], sir[DIM];
vector<int> v;

int main()
{
	is.getline(cuv, DIM);
	is.getline(sir, DIM);
	n = strlen(cuv);
	m = strlen(sir);
	int cnt = 0;
	int nr = 0;
	for(int i = 0; i < m; ++i)
	{
		cnt = 0;
		for(int j = 0; j < n; ++j)
		{
			if(cuv[j] == sir[j+i])
			{
				cnt++;
			}
		}
		if(cnt == n)
		{	
			nr++;
			v.push_back(i);
		}
	}  
	os << nr << '\n';
	int p = v.size();
	for(int i = 0; i < p; ++i)
	{
		os << v[i] << ' ';
	}
	is.close();
	os.close();
	return 0;
}