Escreva um programa ou função que inclua uma lista não vazia de números inteiros positivos. Você pode assumir que é inserido em um formato conveniente razoável, como "1 2 3 4"ou [1, 2, 3, 4].
Os números na lista de entrada representam as fatias de um gráfico de pizza completo , em que cada tamanho de fatia é proporcional ao número correspondente e todas as fatias são organizadas em torno do gráfico na ordem fornecida.
Por exemplo, a torta para 1 2 3 4é:
A pergunta que seu código deve responder é: O gráfico de pizza é dividido em duas partes ? Ou seja, existe sempre uma linha perfeitamente reta de um lado do círculo para o outro, dividindo-o simetricamente em dois?
Você precisa mostrar um truthy valor se houver pelo menos uma bissetriz e saída de um Falsas valor se não houver nenhum .
No 1 2 3 4exemplo, há uma bissecção entre 4 1e, 2 3portanto, a saída seria verdadeira.
Mas, para entrada, 1 2 3 4 5não há bissetor, portanto a saída seria falsa:
Exemplos adicionais
Organizar números de maneira diferente pode remover os bissetores.
por exemplo 2 1 3 4→ falsy:
Se apenas um número estiver na lista de entrada, a torta não será dividida em partes.
por exemplo 10→ falsy:
Pode haver vários bissetores. Desde que haja mais de zero, a saída é verdadeira.
por exemplo 6 6 12 12 12 11 1 12→ truthy: (existem 3 bissetores aqui)
Podem existir bisseções mesmo que não sejam visualmente óbvias.
por exemplo 1000000 1000001→ falsy:
por exemplo 1000000 1000001 1→ verdade:
(Agradecemos a nces.ed.gov por gerar os gráficos de pizza.)
Casos de teste
Truthy
1 2 3 4
6 6 12 12 12 11 1 12
1000000 1000001 1
1 2 3
1 1
42 42
1 17 9 13 2 7 3
3 1 2
10 20 10
Falsy
1 2 3 4 5
2 1 3 4
10
1000000 1000001
1
1 2
3 1 1
1 2 1 2 1 2
10 20 10 1
Pontuação
O código mais curto em bytes vence. O desempatador é a resposta anterior.






