Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //uses crt;
- var s,t,kq:ansistring;
- kt :array['A'..'Z'] of longint;
- n,m:array[1..100000000] of longint;
- i,j,max,richness,k:longint;
- begin
- //clrscr;
- readln(s);
- for i:=1 to 2500 do kq:=kq+'Z';
- max:=0;
- for i:=1 to length(s) do
- begin
- fillchar(kt,sizeof(kt),0);
- richness:=0;
- for j:=i to length(s) do
- begin
- if kt[s[j]]=0 then begin inc(richness); inc(kt[s[j]]); end else
- if kt[s[j]]=1 then begin dec(richness); inc(kt[s[j]]); end;
- if richness > max then max:= richness;
- end;
- end;
- k:=0;
- for i:=1 to length(s) do
- begin
- fillchar(kt,sizeof(kt),0);
- richness:=0;
- for j:=i to length(s) do
- begin
- if kt[s[j]]=0 then begin inc(richness); inc(kt[s[j]]); end else
- if kt[s[j]]=1 then begin dec(richness); inc(kt[s[j]]); end;
- if richness = max then begin inc(k); m[k]:=i; n[k]:=j; end;
- end;
- end;
- for i:=1 to k do
- begin
- t:='';
- for j:=m[i] to n[i] do t:=t+s[j];
- if t<kq then kq:=t;
- end;
- write(kq);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement