Pagini recente » Cod sursa (job #1344267) | Cod sursa (job #1881533) | Cod sursa (job #1578151) | Cod sursa (job #1367091) | Cod sursa (job #743658)
Cod sursa(job #743658)
var l1,l2,k,i:longint;
s1,s2:array[1..2000000] of char;
t:array[1..2000000] of longint;
b:array[1..1 shl 17] of char;
function valid(x:longint):boolean;
var b:boolean;
i:longint;
Begin
b:=true;
for i:=1 to l1 do
if s2[i+x-1]<>s1[i] then
b:=false;
valid:=b;
End;
BEGIN
assign(input,'strmatch.in');
settextbuf(input,b);
reset(input);
l1:=0;l2:=0;k:=0;
while not eoln do
begin
l1:=l1+1;
read(s1[l1]);
end;
readln;
while not eoln do
begin
l2:=l2+1;
read(s2[l2]);
end;
for i:=1 to l2-l1 do
if s2[i]=s1[1] then
if valid(i) then
begin
k:=k+1;
t[k]:=i-1;
end;
assign(output,'strmatch.out');
rewrite(output);
writeln(k);
for i:=1 to k do
write(t[i],' ');
END.