Cod sursa(job #2137238)

Utilizator oso.andinoooIonut Stan oso.andinooo Data 20 februarie 2018 18:00:49
Problema Potrivirea sirurilor Scor 38
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#include <bits/stdc++.h>
using namespace std;

char v1[2000005], v2[2000005];

int main() {
    freopen("strmatch.in", "r", stdin);
    freopen("strmatch.out", "w", stdout);
    int n, m, a = 0, nr = 0, ok;
    gets(v1);
    n = strlen(v1);
    gets(v2);
    m = strlen(v2);
    for (int i = 0; i < m - n; i++) {
        ok = 1;
        for (int j = i; j < i + n; j++) {
            if (v1[j - i] != v2[j])
                ok = 0; }
        nr = nr + ok; }
    printf("%d\n", nr);
    for (int i = 0; i < m - n; i++) {
        ok = 1;
        for (int j = i; j < i + n; j++) {
            if (v1[j - i] != v2[j])
                ok = 0; }
        if (ok == 1 && a <= 1000) {
            printf("%d ", i);
            a++; } }

    printf("\n");

    return 0; }