Com a Mega Sena acumulada neste fim de semana resolvemos fazer um “bolão” para ver se saia pelo menos uma quadra pra pagar um churrasco ![]()
Só vamos ficar sabendo do resultado na segunda pela manha pois os bilhetes estão em uma gaveta no escritório, mas na hora de decidir como seria feita a aposta surgiram várias idéias, uma delas foi pegar um jogo de 8 números e o que sobrasse de jogos de sete números, mas ai alguem levantou a opção de fazer uma combinação com os números que mais sairam e os números que menos sairam, baixamos a tabela com todos os sorteios do site da caixa e ai ficou a dúvida, como descobrir quais os números que mais e menos sairam?
Hoje vi o code contest do Walter Cruz, mas eu ja tinha escrito este código antes …
Então, este post vale como a minha submissão para o code contest, foi escrito em 5 minutos, pode ser melhorado e diminuído ainda …
require 'hpricot'
doc = Hpricot(File.new('c:\megasc.html'))
lines = doc.search('//tr')
values = {}
lines.each {|lin|
tds = lin.search('//td')
if !tds[2].nil?
2.upto(7) {|idx|
val = tds[idx].inner_html
unless values[val]
values[val] = 0
end
values[val] += 1
}
end
}
final_values = values.sort_by {|obj|
obj[1]
}
final_values.each{|key,value|
puts "numero #{key} -> #{value} vezes\n"
}
Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!
Não era exatamente esse o desafio, mas é uma das versões que eu já tinha implementado. Só que no meu caso, eu usei um passo adicional: converti o HTML pra um cvs
Reply to this commentEu sei que não era, mas como eu escrevi, o código ja estava pronto mesmo
Reply to this commentBacana…
Escrevemos o código com o mesmo propósito… Será que nossa intenção era a mesma?
Até o dia que eu vi que estatistamente não faz diferença esse lance dos números que saíram mais. Aí desanimei
Reply to this comment[...] Comentários Walter Cruz on Usando Ruby para ficar Rico!Urubatan on Usando Ruby para ficar Rico!Walter Cruz on Usando Ruby para ficar Rico!Marcos Silva [...]
Reply to this commentEu sabia que estatisticamente não faria diferença nenhuma, fiz mais por brincadeira mesmo
Reply to this comment