[Resolvido] Duvida num algoritmo aqui, dificuldades

3 respostas
Vinicius_Zibetti_Res

Então tenho o seguinte algoritmo:

De verdade gente estou tentando aqui mas n sei o que fazer ai, por favor, pesso humildemente que me ajudem a solucionar, e por favor com explicassão de como fez, se possivel linha por linha.

[size=9]Ref: http://projecteuler.net/index.php?section=problems&id=15[/size]

3 Respostas

Vinicius_Zibetti_Res

Galera, eu andei vendo aqui e tem algo a ver com Triangulo de Pascal… eu acho… Mas mesmo assim não consegui chegar a alguma conclusão.

=(

userguj

Broder… o primeiro e principal passo para resolução deste problema…
VC sakou qual foi a pergunta que está sendo feita no problema ?!

Vinicius_Zibetti_Res

// Solution: ((40)!/(20!*20!)), Result: 137846528820.. public static void main(String[] args) { BigDecimal gridx = new BigDecimal(20); BigDecimal auXx = new BigDecimal(20); BigDecimal gridy = new BigDecimal(40); BigDecimal auXy = new BigDecimal(40); for (int i = 20; i > 1; i--) { gridx = gridx.multiply(auXx.subtract(BigDecimal.valueOf(i - 1))); } for (int i = 40; i > 1; i--) { gridy = gridy.multiply(auXy.subtract(BigDecimal.valueOf(i - 1))); } System.out.println(gridy.divide(gridx.pow(2))); }

Opa, eu consegui fazer, no entando tive que utilizar o BigDecimal para realizar os calculos pois, o double e long não estavam dando conta.

Funciona basicamente assim, se são (20 x 20) caminhos , basta seguir a formula ali.

Criado 25 de junho de 2011
Ultima resposta 25 de jun. de 2011
Respostas 3
Participantes 2