Pagini recente » Cod sursa (job #329832) | Cod sursa (job #2793032) | Cod sursa (job #2663891) | Cod sursa (job #2060808) | Cod sursa (job #670760)
Cod sursa(job #670760)
#include<fstream>
#include<iostream>
#include<cstring>
using namespace std;
#define filein "strmatch.in"
#define fileout "strmatch.out"
FILE *fin, *fout;
char *str1, *str2;
int mInd[1000], current;
int main()
{
fin = fopen(filein, "r");
str1 = new char[2000001];
str2 = new char[2000001];
fgets(str1, 2000000, fin);
fgets(str2, 2000000, fin);
str1[strlen(str1) - 1] = '\0';
fclose(fin);
current = 0;
char* ind = strstr(str2, str1);
if(ind == NULL)
{
}
else
{
do
{
mInd[current] = (int)(ind - str2);
current++;
ind = strstr(ind + 1, str1);
}while (ind != NULL);
}
fout = fopen(fileout, "w");
fprintf(fout, "%d\n", current);
for(int i = 0; i < current; i++)
fprintf(fout, "%d ", mInd[i]);
fclose(fout);
return 0;
}