Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Project2;
- Var s:string;
- n,maxOh:integer;
- s1:string;
- m:array[1..7] of char;
- procedure probeg(i,e:integer);
- Var j:integer;
- begin
- if n=i
- then begin
- if maxOh<e
- then begin
- maxOh:=e;
- s1:='';
- for i:=1 to n do
- begin
- s1:=s1+s[i];
- if m[i]='-'
- then s1:=s1+'-';
- end;
- end;
- exit;
- end;
- for j:=2 to 4 do
- begin
- if i+j<=n
- then begin
- if j=2
- then begin
- if s[i+1]=s[i+2]
- then begin
- m[i+2]:='-';
- probeg(i+2,e+2);
- m[i+2]:=' ';
- end
- else begin
- m[i+2]:='-';
- probeg(i+2,e);
- m[i+2]:=' ';
- end;
- end
- else
- if j=3
- then
- begin
- if (s[i+1]=s[i+2])and(s[i+1]=s[i+3])
- then begin
- m[i+3]:='-';
- probeg(i+3,e+3);
- m[i+3]:=' ';
- end
- else if (s[i+1]=s[i+2])or(s[i+2]=s[i+3])or(s[i+1]=s[i+3])
- then begin
- m[i+3]:='-';
- probeg(i+3,e+2);
- m[i+3]:=' ';
- end
- else begin
- m[i+3]:='-';
- probeg(i+3,e);
- m[i+3]:=' ';
- end
- end
- else begin
- if (s[i+1]=s[i+2])and(s[i+1]=s[i+3])and(s[i+1]=s[i+4])
- then begin
- m[i+4]:='-';
- probeg(i+4,e+5);
- m[i+4]:=' ';
- end
- else if (s[i+1]=s[i+4])and(s[i+2]=s[i+3])
- then begin
- m[i+4]:='-';
- probeg(i+4,e+4);
- m[i+4]:=' ';
- end
- else if ((s[i+2]=s[i+4])and(s[i+2]=s[i+3]))or((s[i+1]=s[i+4])and(s[i+1]=s[i+3]))or((s[i+1]=s[i+2])and(s[i+1]=s[i+4]))or((s[i+1]=s[i+2])and(s[i+1]=s[i+3]))or((s[i+1]=s[i+2])and(s[i+3]=s[i+4]))or((s[i+1]=s[i+3])and(s[i+2]=s[i+4]))
- then begin
- m[i+4]:='-';
- probeg(i+4,e+3);
- m[i+4]:=' ';
- end
- else if (s[i+1]=s[i+3])or(s[i+2]=s[i+4])
- then begin
- m[i+4]:='-';
- probeg(i+4,e+2);
- m[i+4]:=' ';
- end
- else begin
- m[i+4]:='-';
- probeg(i+4,e);
- m[i+4]:=' ';
- end
- end;
- end; end;
- end;
- begin
- Assign(input,'input.txt');
- Assign(output,'output.txt');
- readln(s);
- maxOh:=-1;
- n:=length(s);
- probeg(0,0);
- delete(s1,length(s1),1);
- writeln(s1);
- writeln(maxOh);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement