def dividir(array):
resultado = []
nada = {}
parte = []
ultima = nada
for elemento in array:
if len(parte) > 0 and (ultima == nada or (elemento != ultima and elemento != ultima + 1)):
resultado.append(parte)
parte = []
parte.append(elemento)
ultima = elemento
if len(parte) > 0:
resultado.append(parte)
return resultado
# Teste
array = [1, 2, 2, 3, 3, 3, 6, 6, 7, 11, 12, 12, 13, 14, 14]
lista = dividir(array)
print(lista);
ZGVmIGRpdmlkaXIoYXJyYXkpOgogICAgcmVzdWx0YWRvID0gW10KICAgIG5hZGEgPSB7fQogICAgcGFydGUgPSBbXQogICAgdWx0aW1hID0gbmFkYQogICAgZm9yIGVsZW1lbnRvIGluIGFycmF5OgogICAgICAgIGlmIGxlbihwYXJ0ZSkgPiAwIGFuZCAodWx0aW1hID09IG5hZGEgb3IgKGVsZW1lbnRvICE9IHVsdGltYSBhbmQgZWxlbWVudG8gIT0gdWx0aW1hICsgMSkpOgogICAgICAgICAgIHJlc3VsdGFkby5hcHBlbmQocGFydGUpCiAgICAgICAgICAgcGFydGUgPSBbXQogICAgICAgIHBhcnRlLmFwcGVuZChlbGVtZW50bykKICAgICAgICB1bHRpbWEgPSBlbGVtZW50bwogICAgaWYgbGVuKHBhcnRlKSA+IDA6CiAgICAgICAgcmVzdWx0YWRvLmFwcGVuZChwYXJ0ZSkKICAgIHJldHVybiByZXN1bHRhZG8KCiMgVGVzdGUKYXJyYXkgPSBbMSwgMiwgMiwgMywgMywgMywgNiwgNiwgNywgMTEsIDEyLCAxMiwgMTMsIDE0LCAxNF0KbGlzdGEgPSBkaXZpZGlyKGFycmF5KQpwcmludChsaXN0YSk7
[[1, 2, 2, 3, 3, 3], [6, 6, 7], [11, 12, 12, 13, 14, 14]]