Pagini recente » Cod sursa (job #601505) | Cod sursa (job #2809806) | Cod sursa (job #433160) | Cod sursa (job #1692573) | Cod sursa (job #265186)
Cod sursa(job #265186)
var f,g:text;
a,b:array [1..2000001] of char;
c:array[1..1000] of longint;
i,j,m,n,k,p:longint;
procedure citire;
begin
assign(f,'strmatch.in');
reset(f);
n:=0;
m:=0;
while not eoln(f) do begin
m:=m+1;
read(f,b[m]);
end;
readln(f);
while not eoln(f) do begin
n:=n+1;
read(f,a[n]);
end;
close(f);
end;
procedure strmeci;
begin
i:=1;
k:=1;
repeat
if a[i]=b[k] then k:=k+1 else begin k:=1; if a[i]=b[k] then k:=k+1; end;
if k=m+1 then begin
p:=p+1;
c[p]:=i-m;
k:=1;
i:=i-m+1;
end;
i:=i+1;
until i=n+1;
end;
procedure afisare;
begin
assign(g,'strmatch.out');
rewrite(g);
writeln(g,p);
for i:=1 to p do write(g,c[i],' ');
close(g);
end;
begin
citire;
strmeci;
afisare;
end.