Pagini recente » Cod sursa (job #1580617) | Cod sursa (job #296035) | Cod sursa (job #532838) | Cod sursa (job #1077091) | Cod sursa (job #21733)
Cod sursa(job #21733)
program adn;
type vec=array[1..18]of string;
vec1=array[1..18]of boolean;
var a:vec;
v:vec1;
n:integer;
procedure citire(var n:integer; var a:vec);
var f:text;
i:integer;
begin
assign(f,'adn.in');reset(f);
readln(f,n);
for i:=1 to n do readln(f,a[i]);
close(f);
end;
procedure ordonare(var a:vec);
var i:integer;
s:string;
ok:boolean;
begin
repeat ok:=true;
for i:=1 to n-1 do if length(a[i])<length(a[i+1]) then begin s:=a[i];
a[i]:=a[i+1];
a[i+1]:=s;
ok:=false;
end;
until ok;
end;
procedure go;
var sol:string;
i,j,x,y:integer;
sv,st:string;
ok:boolean;
f:text;
begin
sol:=a[1];
for i:=2 to n do begin
x:=0;
repeat ok:=true;
x:=x+1;
sv:='';
for j:=1 to x do sv:=sv+a[i][j];
y:=pos(sv,sol);
if y=0 then ok:=false;
until (not ok) or (x=length(a[i]));
if not ok then begin x:=x-1;
for j:=x to length(a[i]) do sol:=sol+a[i][j]; end;
end;
assign(f,'adn.out');rewrite(f);
writeln(f,sol);
close(f);
end;
begin
citire(n,a);
ordonare(a);
go;
end.