Skip to content

Instantly share code, notes, and snippets.

@david-sosa-valdes
Last active April 1, 2016 08:20
Show Gist options
  • Save david-sosa-valdes/058cbc6b0b8e9a011ff7a4d2d4e51654 to your computer and use it in GitHub Desktop.
Save david-sosa-valdes/058cbc6b0b8e9a011ff7a4d2d4e51654 to your computer and use it in GitHub Desktop.
Clase para obtener los posibles escenarios de anotación a partir de un resultado de futbol.
# coding=utf-8
from copy import copy
class FootbalScores(object):
def __init__(self, score):
self.points = [2,3,7]
self.solutions = list()
self.boundaries = list()
self.score = score
def setBoundaries(self):
for point in self.points:
max_score = round(self.score/point,2)
self.boundaries.append(int(max_score))
return self
def verifySolutions(self):
for x in xrange(self.boundaries[0],-1,-1):
for y in xrange(self.boundaries[1],-1,-1):
for z in xrange(self.boundaries[2],-1,-1):
aprox = ((x*self.points[0])+(y*self.points[1])+(z*self.points[2]))
if aprox == self.score:
self.solutions.append((x,y,z))
return self
if __name__ == '__main__':
fb = FootbalScores(8)
fb.setBoundaries()
fb.verifySolutions()
print fb.solutions
@david-sosa-valdes
Copy link
Author

Tengo una solución medio simple pero es lo que pude lograr en 45 mins, cualquiera que quiera dar una revisión al código es bienvenido.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment