Vindo desta postagem do sandbox
Isso é inspirado em um teste de matemática da 8ª série
Introdução
Temos um cubo com os seguintes cantos
A(0, 0, 0)
B(1, 0, 0)
C(1, 1, 0)
D(0, 1, 0)
E(0, 0, 1)
F(1, 0, 1)
G(1, 1, 1)
H(0, 1, 1)
Este cubo possui claramente 8 cantos, 12 arestas e 6 faces. Se agora cortamos o canto G, de modo que nosso plano de corte passe exatamente no meio de cada aresta original adjacente, adicionamos 2 novos cantos, 3 novas arestas e uma nova face. Por favor, aproveite esta obra de arte desenhada à mão, para melhor esclarecimento
Entrada
Dada uma lista de cantos (neste exemplo, identificados por AH), que serão cortados, calcule o novo número de cantos, arestas e faces.
Você faz a entrada da forma que desejar, desde que ela responda aos mesmos cantos (por exemplo, em vez de AH, você pode usar 1-8 ou 0-7, você pode assumir que seja uma lista, csv, o que for)
Você pode supor que a lista seja distinta (todos os cantos aparecerão uma vez no máximo), mas pode estar vazia. A lista nunca conterá cantos inexistentes.
Resultado
Saída de três números correspondentes ao número de cantos, arestas e faces. A saída como uma lista é explicitamente permitida. Espaços em branco à direita são permitidos
Exemplos
{} -> 8, 12, 6 (empty list)
{A} -> 10, 15, 7
{A,C} -> 12, 18, 8
{A,C,F} -> 14, 21, 9
{A,B,C} -> 12, 19, 9
{A,B,C,D} -> 12, 20, 10
Finalmente, este é um codegolf, e a resposta mais curta em bytes vence. Evite brechas comuns.