Cod sursa(job #302885)

Utilizator ssergiussSergiu-Ioan Ungur ssergiuss Data 9 aprilie 2009 13:10:58
Problema Potrivirea sirurilor Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
//#include<algorithm>
//using namespace std;
#include<stdio.h>
#include<string.h>

#define DIM 2000001

int lga,lgb,nrsol,sol[DIM/2000];
char a[DIM],b[DIM],*p;

void read(){

    gets(a);
    lga=strlen(a);
    scanf("\n");
    gets(b);
    lgb=strlen(b);}

void solve(){
	int poz;

	p=strstr(b,a);
	for(poz=0; strlen(p); ){
		sol[++nrsol]=poz=strlen(b)-strlen(p);
		p=strstr(b+poz+1,a);}}

void print(){
    int i;

	printf("%d\n",nrsol);
    for(i=1; i<=nrsol; ++i)
        printf("%d ",sol[i]);}

int main(){

    freopen("strmatch.in","r",stdin);
    freopen("strmatch.out","w",stdout);

	read();
	solve();
 	print();
    return 0;}