Pagini recente » Cod sursa (job #1218487) | Cod sursa (job #1337280) | Cod sursa (job #1609601) | Cod sursa (job #1398517) | Cod sursa (job #549714)
Cod sursa(job #549714)
var c:array[0..10000,0..10000]of integer;
a,b:array[1..10000]of integer;
n,m:integer;
procedure citire;
var i:integer; f:text;
begin
assign(f,'cmlsc.in');
reset(f);
readln(f,n,m);
for i:=1 to n do read(f,a[i]); readln(f);
for i:=1 to m do read(f,b[i]);
close(f);
end;
function max(a,b:integer):integer;
begin
if a>b then max:=a else max:=b;
end;
procedure init;
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to m do
if a[i]=b[j] then c[i,j]:=c[i-1,j-1]+1 else c[i,j]:=max(c[i-1,j],c[i,j-1]);
end;
procedure afis;
var i,max:integer; f:text;
begin
assign(f,'cmlsc.out');
rewrite(f);
max:=0;
writeln(f,c[n,m]);
for i:=1 to m do
if c[n,i]>max then begin write(f,b[i],' '); max:=c[n,i]; end;
close(f);
end;
begin
citire;
init;
afis;
end.