/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
String s
= "wwhoamiUrektxineabcdefghijklmno";
int head = 0, tail = 0;
do {
while (head < s.length() && worm.indexOf(s.charAt(head)) < 0) {
head++;
worm = s.substring(tail, head);
System.
out.
println(t.
substring(0, tail
) + worm
); if (worm.length() > caterpillar.length())
caterpillar = worm;
}
if (head < s.length())
while (worm.indexOf(s.charAt(head)) >= 0) {
tail++;
worm = s.substring(tail, head);
System.
out.
println(t.
substring(0, tail
) + worm
+ "(" + s.
charAt(head
) + ")"); }
} while (head < s.length());
System.
out.
println("Longest: " + caterpillar
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewogICAgICAgIFN0cmluZyBzID0gInd3aG9hbWlVcmVrdHhpbmVhYmNkZWZnaGlqa2xtbm8iOwogICAgICAgIFN0cmluZyB0ID0gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiOwoKICAgICAgICBpbnQgaGVhZCA9IDAsIHRhaWwgPSAwOwogICAgICAgIFN0cmluZyB3b3JtID0gIiI7CiAgICAgICAgU3RyaW5nIGNhdGVycGlsbGFyID0gIiI7CiAgICAgICAgZG8gewogICAgICAgICAgICB3aGlsZSAoaGVhZCA8IHMubGVuZ3RoKCkgJiYgd29ybS5pbmRleE9mKHMuY2hhckF0KGhlYWQpKSA8IDApIHsKICAgICAgICAgICAgICAgIGhlYWQrKzsKICAgICAgICAgICAgICAgIHdvcm0gPSBzLnN1YnN0cmluZyh0YWlsLCBoZWFkKTsKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbih0LnN1YnN0cmluZygwLCB0YWlsKSArIHdvcm0pOwogICAgICAgICAgICAgICAgaWYgKHdvcm0ubGVuZ3RoKCkgPiBjYXRlcnBpbGxhci5sZW5ndGgoKSkKICAgICAgICAgICAgICAgICAgICBjYXRlcnBpbGxhciA9IHdvcm07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGhlYWQgPCBzLmxlbmd0aCgpKQogICAgICAgICAgICAgICAgd2hpbGUgKHdvcm0uaW5kZXhPZihzLmNoYXJBdChoZWFkKSkgPj0gMCkgewogICAgICAgICAgICAgICAgICAgIHRhaWwrKzsKICAgICAgICAgICAgICAgICAgICB3b3JtID0gcy5zdWJzdHJpbmcodGFpbCwgaGVhZCk7CiAgICAgICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHQuc3Vic3RyaW5nKDAsIHRhaWwpICsgd29ybSArICIoIiArIHMuY2hhckF0KGhlYWQpICsgIikiKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICB9IHdoaWxlIChoZWFkIDwgcy5sZW5ndGgoKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJMb25nZXN0OiAiICsgY2F0ZXJwaWxsYXIpOwoJfQp9