Lógica para o problema "Os números complicados"

2 respostas
B

Galera gostaria de implementar este problema, porém não estou conseguindo pensar em uma lógica! Será que alguém ajuda?
Abs!

DESCRIÇÃO DO PROBLEMA:

“Neste trabalho você deve mostrar como um subconjunto dos números de 1 a 1000 podem ser escritos usando-se expressões aritmeticas que tem apenas os seguintes elementos: 5, 7, (, ), +, - e *.
Por exemplo, abaixo estão representadas as expressões para os numeros de 30 a 35. E importante notar que as expressões devem ser tao curtas quanto possível, pois seria simples demais achar apenas a expressão equivalente a 1 e depois soma-la tantas vezes quanto necessárias para se obter um numero. O numero de parenteses tambem deve ser o minimo possvel.
O grau de complicacão de um numero e a quantidade de vezes que 5 e 7 devem ser usados na expressão que corresponde ao numero.
Assim, 30 tem grau de complicação 3, e 31 tem grau de complicacão 5”.

Exemplos:

30 = 57-5
31 =7-(5
5)+77
32 = 7+5
5
33 = 57+5-7
34 = 7+5
5-(5-7)
35 = 5*7

Obrigado galera!

2 Respostas

E

Bom, para os números cujos únicos fatores são 5 e 7 a resposta é evidente. Por exemplo,

875 = 5 * 5 * 5 * 7

Isso dá uma sugestão - que você pode ir dividindo o número por 5 e 7 até achar algo que não é 5 e 7:

70 = 5 * 7 * 2

Neste caso, temos o número 2, que é dado por 7 - 5:

70 = 5 * 7 * (7 - 5)

O problema é quando você tem um número primo. Por exemplo, o número 31 (que foi mostrado abaixo) :

31 = 31

Neste ponto, você vai precisar de uma adição ou subtração logo de cara. Vamos pensar em um valor próximo (35 = 5 * 7)

31 = 5 * 7 - 4

Bom, mas como é que se escreve 4? Talvez 4 = (7 - 5) * (7 - 5). Vamos ver o que ocorre:

5 * 7 - (7 - 5) * (7 - 5)

Não é a melhor solução (está com um 5 ou 7 a mais que a melhor solução).

Portanto, você tem de pensar melhor e achar uma solução melhor.

B

Obrigado entanglement!
Me ajudou bastante.! Com suas colocações posso ter um “start” para começar, apesar que ainda minhas ideias estejam nebulosas!
Obrigado. Se aparecer qualquer coisa eu posto aqui e espero a ajuda de todos!
Valeu!

Criado 10 de junho de 2012
Ultima resposta 11 de jun. de 2012
Respostas 2
Participantes 2