Escreva um programa ou função que receba entrada: todos os resistores disponíveis e um valor de resistência e emita um valor verdadeiro se é possível ou não obter a resistência usando esses resistores.
Regras:
Qualquer formato para entrada serve.
Haverá pelo menos 1 resistor disponível e seu programa deve gerar pelo menos 10 resistores disponíveis.
A resistência de todos os resistores disponíveis e a resistência necessária serão números inteiros positivos.
Para resistores disponíveis, se também for possível um valor fracionário, a resistência necessária pode ser o valor aproximado (veja o exemplo)
A saída deve ter 2 valores exclusivos para Possível e Não possível.
Os resistores podem ser conectados de qualquer maneira.
Resistência em série : Para n resistências em série: Resultado = R1 + R2 + R3 + .... Rn
Resistência Paralela : Para n resistências em paralelo: Resultado = 1 / (1 / R1 + 1 / R2 + 1 / R3 + .... + 1 / Rn)
O circuito pode não exigir que todos os resistores obtenham a resistência necessária (saída True, se for esse o caso).
Vencedora:
Isso é código-golfe, então o código mais curto vence.
Exemplos:
R List
110 220,220 -> True
440 220,220 -> True
550 400,300 -> False
3000 1000,3000 -> True
750 1000,3000 -> True
333 1000,1000,1000 -> True (1000||1000||1000=333.333)
667 1000,1000,1000 -> True ((1000+1000)||1000=666.6666)
8000 1000,1000,7000 -> True
190 100,200,333,344,221 -> True
193 105,200,333,344,221 -> True
400 200,100 -> False
Explicação para os dois últimos exemplos: /physics/22252/resistor-circuit-that-isnt-parallel-or-series
3 3 1
,3 3 2
?