/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.Collections;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
ArrayList<String> list = new ArrayList<>();
list.add("19.15.15.90:61234");
list.add("19.15.15.29:28010");
list.add("19.15.15.80:8998");
list.add("19.15.15.102:8998");
list.add("25.25.24.15:8998");
list.add("25.25.24.80:8998");
list.add("210.192.38.25:8998");
list.add("210.192.38.29:8998");
// You should sort the list
// may aswell print the first one
System.
out.
println(list.
get(0)); for (int i = 1; i < list.size(); i++) {
int pos = nthIndexOf(list.get(i), '.', 3);
if (!list.get(i).substring(0, pos).equals(list.get(i - 1).substring(0, pos))) {
System.
out.
println(list.
get(i
)); }
}
}
public static int nthIndexOf
(String text,
char needle,
int n
) { for (int i = 0; i < text.length(); i++) {
if (text.charAt(i) == needle) {
n--;
if (n == 0) {
return i;
}
}
}
return -1;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCUFycmF5TGlzdDxTdHJpbmc+IGxpc3QgPSBuZXcgQXJyYXlMaXN0PD4oKTsKICAgICAgICBsaXN0LmFkZCgiMTkuMTUuMTUuOTA6NjEyMzQiKTsKICAgICAgICBsaXN0LmFkZCgiMTkuMTUuMTUuMjk6MjgwMTAiKTsKICAgICAgICBsaXN0LmFkZCgiMTkuMTUuMTUuODA6ODk5OCIpOwogICAgICAgIGxpc3QuYWRkKCIxOS4xNS4xNS4xMDI6ODk5OCIpOwogICAgICAgIGxpc3QuYWRkKCIyNS4yNS4yNC4xNTo4OTk4Iik7CiAgICAgICAgbGlzdC5hZGQoIjI1LjI1LjI0LjgwOjg5OTgiKTsKICAgICAgICBsaXN0LmFkZCgiMjEwLjE5Mi4zOC4yNTo4OTk4Iik7CiAgICAgICAgbGlzdC5hZGQoIjIxMC4xOTIuMzguMjk6ODk5OCIpOwoKICAgICAgICAvLyBZb3Ugc2hvdWxkIHNvcnQgdGhlIGxpc3QKICAgICAgICBDb2xsZWN0aW9ucy5zb3J0KGxpc3QpOwoKICAgICAgICAvLyBtYXkgYXN3ZWxsIHByaW50IHRoZSBmaXJzdCBvbmUKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4obGlzdC5nZXQoMCkpOwogICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDwgbGlzdC5zaXplKCk7IGkrKykgewogICAgICAgICAgICBpbnQgcG9zID0gbnRoSW5kZXhPZihsaXN0LmdldChpKSwgJy4nLCAzKTsKICAgICAgICAgICAgaWYgKCFsaXN0LmdldChpKS5zdWJzdHJpbmcoMCwgcG9zKS5lcXVhbHMobGlzdC5nZXQoaSAtIDEpLnN1YnN0cmluZygwLCBwb3MpKSkgewogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGxpc3QuZ2V0KGkpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGludCBudGhJbmRleE9mKFN0cmluZyB0ZXh0LCBjaGFyIG5lZWRsZSwgaW50IG4pIHsKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHRleHQubGVuZ3RoKCk7IGkrKykgewogICAgICAgICAgICBpZiAodGV4dC5jaGFyQXQoaSkgPT0gbmVlZGxlKSB7CiAgICAgICAgICAgICAgICBuLS07CiAgICAgICAgICAgICAgICBpZiAobiA9PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIC0xOwoJfQp9