TDD Kata (6): Ojos de Buey

Anterior Post 
Siguiente Post 


Ya en la ronda 1A Google Code Jam de este año, me encontré con este problema:


https://code.google.com/codejam/contest/2418487/dashboard


El llamado Bulleyes. María tiene que pintar una serie de círculos concéntricos, dado un radio y una cantidad de pintura inicial. El problema es, dado r y t (el radio y la cantidad de pintura) ¿cuántos círculos de 1cm de “ancho” puede pintar?


Al participar, he desarrollado los primeros test con TDD, y pueden ver la solución en:


https://github.com/ajlopez/TddOnTheRocks/tree/master/Bulleyes


Siempre pueden pueden consultar la historia del desarrollo en:


https://github.com/ajlopez/TddOnTheRocks/commits/master/Bulleyes


Al principio, tenía un algoritmo que dependía de una función que daba cuánta pintura se necesitaba para pintar alrededor de un radio r. Pero luego, la reemplacé por otro algoritmo, que da directamente la cantidad de círculos que María puede pintar, dado el radio y la cantidad de pintura. Y todo siguió andando.


Como en otros ejemplos de Google Code Jam, no hice con TDD al programa de consola. Me concentré en tener el algoritmo correcto, luego de tener algunos tests en verde. En este caso, bastó con encontrar una fórmula que resuelve el caso en general.


Nos leemos!


Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

This entry was posted in 10549, 11699, 1389, 17837, 5374. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>