Advertisement
trankhanh47

xaucon_dainhat

Oct 19th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 0.87 KB | None | 0 0
  1. uses crt;
  2.  
  3. var     s1,s2,kq:string;
  4.         a:array[0..1000,0..1000] of longint;
  5.         i,j:longint;
  6.  
  7. function max(x,y:longint):longint;
  8. begin
  9.         if x>y then exit(x) else exit(y);
  10. end;
  11.  
  12. begin
  13.         clrscr;
  14.         readln(s1); readln(s2);
  15.         kq:='';
  16.         {nap cong thuc}
  17.         for i:=0 to length(s1) do a[i,j]:=0;
  18.         for i:=1 to length(s1) do
  19.                  for j:=1 to length(s2) do
  20.                  if s1[i]=s2[j] then a[i,j]:=a[i-1,j-1]+1 else a[i,j]:=max(a[i-1,j],a[i,j-1]);
  21.         {truy vet}
  22.         i:=length(s1); j:=length(s2);
  23.         While (i>0) and (j>0) do
  24.                 if s1[i]=s2[j] then
  25.                         begin
  26.                         kq:=s1[i]+kq;
  27.                         dec(i); dec(j);
  28.                         end
  29.                 else if a[i-1,j]=a[i,j] then dec(i) else dec(j);
  30.         write(kq);
  31. readln
  32. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement