Cod sursa(job #1279622)
| Utilizator | Data | 30 noiembrie 2014 17:35:40 | |
|---|---|---|---|
| Problema | Potrivirea sirurilor | Scor | 40 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.58 kb |
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
const int DIM = 2000001;
int cnt;
char s[DIM], p[DIM];
int poz[1001];
int k;
int main()
{
fin.getline(s, DIM);
fin.getline(p, DIM);
char *a = strstr(p, s);
while (a != NULL)
{
cnt++;
poz[k] = a - p;
k++;
a = strstr(a + 1, s);
}
fout << cnt << '\n';
for ( int i = 0; i < k; ++i )
fout << poz[i] << ' ';
fin.close();
fout.close();
return 0;
}
