Cod sursa(job #1123459)

Utilizator raduiulianRadu Iulian Mihai raduiulian Data 26 februarie 2014 08:34:15
Problema Potrivirea sirurilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.89 kb
#include <cstdio>
#include <cstring>
using namespace std;

int x,x1,nr,numar,ok,sol[2000002];
char s1[2000002],s2[2000002];

int main()
{
    freopen("strmatch.in","r",stdin);
    freopen("strmatch.out","w",stdout);
    gets(s1);
    scanf("\n");
    gets(s2);
    x=strlen(s1);
    x1=strlen(s2);
    numar=1;
    for(int i=0;i<x1;i++)
    {
        ok=0;
        if(s2[i]==s1[0])
        {
            ok=1;
            nr=1;
            for(int j=i+nr;j<i+x;j++)
            {
                if(s2[j]!=s1[nr])
                {
                    ok=0;
                    break;
                }
                nr++;
            }
        }
        if(ok==1)
        {
            sol[numar]=i;
            numar++;
        }
    }
    numar--;
    printf("%d\n",numar);
    for(int i=1;i<=numar;i++)
    {
        printf("%d ",sol[i]);
    }
    return 0;
}