import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
static ArrayList<Integer> removeDup(ArrayList<Integer> a) {
int uniqueCnt = 0;
for (int i = 0; i < a.size(); ++i) {
if ((i == 0 || a.get(i) != a.get(i-1)) && (i+1 == a.size() || a.get(i) != a.get(i+1))) {
a.set(uniqueCnt++, a.get(i));
}
}
a.subList(uniqueCnt, a.size()).clear();
return a;
}
{
ArrayList
<Integer
> values
= new ArrayList
<>(Arrays.
asList(1,
2,
3,
4,
4,
5,
6,
7,
7,
8,
9,
10,
11,
11,
11,
11,
11,
12,
12,
13,
13,
13,
13)); System.
out.
println(removeDup
(values
)); ArrayList
<Integer
> values2
= new ArrayList
<>(Arrays.
asList(1,
1,
2,
2,
3,
3)); System.
out.
println(removeDup
(values2
)); ArrayList
<Integer
> values3
= new ArrayList
<>(Arrays.
asList(1)); System.
out.
println(removeDup
(values3
)); }
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBJZGVvbmUKewogICAgc3RhdGljIEFycmF5TGlzdDxJbnRlZ2VyPiByZW1vdmVEdXAoQXJyYXlMaXN0PEludGVnZXI+IGEpIHsKCQlDb2xsZWN0aW9ucy5zb3J0KGEpOwkKCQkKCQlpbnQgdW5pcXVlQ250ID0gMDsgCgkJZm9yIChpbnQgaSA9IDA7IGkgPCBhLnNpemUoKTsgKytpKSB7CgkJCWlmICgoaSA9PSAwIHx8IGEuZ2V0KGkpICE9IGEuZ2V0KGktMSkpICYmIChpKzEgPT0gYS5zaXplKCkgfHwgYS5nZXQoaSkgIT0gYS5nZXQoaSsxKSkpIHsKCQkJCWEuc2V0KHVuaXF1ZUNudCsrLCBhLmdldChpKSk7CgkJCX0KCQl9IAoJCWEuc3ViTGlzdCh1bmlxdWVDbnQsIGEuc2l6ZSgpKS5jbGVhcigpOwoJCXJldHVybiBhOwogICAgfQogICAgCiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KICAgIHsKICAgICAgICBBcnJheUxpc3Q8SW50ZWdlcj4gdmFsdWVzID0gbmV3IEFycmF5TGlzdDw+KEFycmF5cy5hc0xpc3QoMSwyLDMsNCw0LDUsNiw3LDcsOCw5LDEwLDExLDExLDExLDExLDExLDEyLDEyLDEzLDEzLDEzLDEzKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHJlbW92ZUR1cCh2YWx1ZXMpKTsKICAgICAgICBBcnJheUxpc3Q8SW50ZWdlcj4gdmFsdWVzMiA9IG5ldyBBcnJheUxpc3Q8PihBcnJheXMuYXNMaXN0KDEsMSwyLDIsMywzKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHJlbW92ZUR1cCh2YWx1ZXMyKSk7CiAgICAgICAgQXJyYXlMaXN0PEludGVnZXI+IHZhbHVlczMgPSBuZXcgQXJyYXlMaXN0PD4oQXJyYXlzLmFzTGlzdCgxKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHJlbW92ZUR1cCh2YWx1ZXMzKSk7CiAgICB9Cn0=