Cod sursa(job #678657)
| Utilizator | Data | 12 februarie 2012 10:26:41 | |
|---|---|---|---|
| Problema | Potrivirea sirurilor | Scor | 40 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include <cstdio>
#include <cstring>
char a[2000000], b[2000000]; int c[2000000], d; char * e = b - 1;
int main() {
FILE * f1 = fopen("strmatch.in", "rt"); fscanf(f1, "%s", a); fscanf(f1, "%s", b); fclose(f1);
while (e) {e = strstr(e + 1, a); c[d++] = (int)(e - b); if (d == 1001) {break;}} --d;
FILE * f2 = fopen("strmatch.out", "wt"); fprintf(f2, "%d\n", d); for (int i = 0; i < d; ++i) {fprintf(f2, "%d ", c[i]);} fclose(f2);
}
