Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Uncategorized category for The Angles of a Triangle by szneqz
import math
def angle (a, b, c):
return math.degrees(math.acos((c**2 - b**2 - a**2)/(-2.0 * a * b)))
def checkio(a, b, c):
maxy = 0
rest = [0, 0]
result = [0, 0, 0]
if a > maxy:
maxy = a
rest[0] = b
rest[1] = c
if b > maxy:
maxy = b
rest[0] = a
rest[1] = c
if c > maxy:
maxy = c
rest[0] = a
rest[1] = b
if (rest[0] + rest[1]) <= maxy:
return [0, 0, 0]
result[0] = int(round(angle(a, b, c)))
result[1] = int(round(angle(c, a, b)))
result[2] = int(round(angle(b, c, a)))
result = sorted(result)
return result
#These "asserts" using only for self-checking and not necessary for auto-testing
if __name__ == '__main__':
assert checkio(4, 4, 4) == [60, 60, 60], "All sides are equal"
assert checkio(3, 4, 5) == [37, 53, 90], "Egyptian triangle"
assert checkio(2, 2, 5) == [0, 0, 0], "It's can not be a triangle"
Jan. 22, 2018