Pagini recente » Cod sursa (job #2335554) | Cod sursa (job #316864)
Cod sursa(job #316864)
# include <algorithm>
using namespace std;
# define DIM 1 << 21
int lg0, lg1, sol[ DIM ];
char s0[ DIM ], s1[ DIM ];
int check ( int x ) {
int i;
for ( i = 1; i < lg0; ++ i )
if ( s0[ i ] != s1[ i + x ] )
return 0;
return 1;
}
void read () {
gets ( s0 );
lg0 = strlen ( s0 );
scanf ( "\n" );
gets ( s1 );
lg1 = strlen ( s1 );
}
void solve () {
int i;
for ( i = 0; i < lg1 - lg0 + 2; ++ i )
if ( s0[ 0 ] == s1[ i ] && check ( i ) )
sol[ ++ sol[ 0 ] ] = i;
printf ( "%d\n", sol[ 0 ] );
for ( i = 1; i <= sol[ 0 ]; ++ i )
printf ( "%d ", sol[ i ] );
}
int main () {
freopen ( "strmatch.in", "r", stdin );
freopen ( "strmatch.out", "w", stdout );
read ();
solve ();
return 0;
}