p151.py
======================
import math


def find_triangle_coordinates(b, c, m):
    # m^2 = 1/4 (2b^2 + 2c^2 - a^2)

    inner_val = 2 * b**2 + 2 * c**2 - 4 * m**2
    if inner_val < 0:
        return None

    a = math.sqrt(inner_val)
    if a > b + c or b > a + c or c > a + b:
        return None

    # Use cosine law to find angles
    cos_C = (b**2 + c**2 - a**2) / (2 * b * c)

    Bx = c
    By = 0

    Cx = b * cos_C 
    Cy = b * math.sqrt(1 - cos_C**2)

    # Return coordinates of A, B, C
    return [(0, 0), (Bx, By), (Cx, Cy)]


def main():
    c, b, m = map(float, input().split())
    coords = find_triangle_coordinates(b, c, m)

    if coords is None:
        print("Mission impossible")
        return

    for x, y in coords:
        print(f"{x:.6f} {y:.6f}")


if __name__ == "__main__":
    main()

=================
statement.txt
======================
151. Construct a triangle
time limit per test: 0.25 sec.
memory limit per test: 4096 KB
input: standard input
output: standard output



Find coordinates of any triangle ABC if it is know that |AB|=c, |AC|=b, |AM|=m, AM is a median of triangle.

Input
There are three real numbers in input: c, b, m (0<c,b,m<=10^3) separated by a space. Length of the fractional part of each number is not greater than 2 digits.

Output
If solution exists, write three lines. Write coordinates of point A to first line, coordinates of B to second line and coordinates of C to third line. Separate numbers by a space; absolute value of each coordinate must not exceed 10^4. Write numbers with 5 digits after decimal point. If there is no solution, write "Mission impossible"

Sample test(s)

Input
5 5 3

Output
0.00000 3.00000
-4.00000 0.00000
4.00000 0.00000
Author:	Michael R. Mirzayanov
Resource:	Saratov Subregional School Team Contest, 2002
Date:	Spring, 2002








=================
