Data update
This commit is contained in:
parent
5150844a7d
commit
4bb20c9b71
7735 changed files with 38060 additions and 199180 deletions
|
|
@ -1,37 +0,0 @@
|
|||
with Ada.Text_IO;
|
||||
|
||||
procedure Shortest is
|
||||
|
||||
function Scs (Left, Right : in String) return String is
|
||||
Left_Tail : String renames Left (Left'First + 1 .. Left'Last);
|
||||
Right_Tail : String renames Right (Right'First + 1 .. Right'Last);
|
||||
begin
|
||||
if Left = "" then return Right; end if;
|
||||
if Right = "" then return Left; end if;
|
||||
|
||||
if Left (Left'First) = Right (Right'First) then
|
||||
return Left (Left'First) & Scs (Left_Tail, Right_Tail);
|
||||
end if;
|
||||
|
||||
declare
|
||||
S1 : constant String := Scs (Left, Right_Tail);
|
||||
S2 : constant String := Scs (Left_Tail, Right);
|
||||
begin
|
||||
return (if S1'Length <= S2'Length
|
||||
then Right (Right'First) & S1
|
||||
else Left (Left'First) & S2);
|
||||
end;
|
||||
end Scs;
|
||||
|
||||
procedure Exercise (Left, Right : String) is
|
||||
use Ada.Text_Io;
|
||||
begin
|
||||
Put ("scs ( "); Put (Left); Put (" , "); Put (Right); Put ( " ) -> ");
|
||||
Put (Scs (Left, Right));
|
||||
New_Line;
|
||||
end Exercise;
|
||||
|
||||
begin
|
||||
Exercise ("abcbdab", "bdcaba");
|
||||
Exercise ("WEASELS", "WARDANCE");
|
||||
end Shortest;
|
||||
Loading…
Add table
Add a link
Reference in a new issue