#!/usr/bin/env pypy3
import sys

def gcd(m, n, ctr):
    if (m % n == 0):
        return ctr # we don't care about the actual GCD
    else:
        return gcd(n, m % n, ctr + 1)

def m_known(m):
    total = 0
    avg = 0
    num_runs = 0

    for i in range(1, 500*m):
        total += gcd(m, i, 1)
        num_runs += 1

    print(f"U_{m}: {total / num_runs:.2f}")

def n_known(n):
    total = 0
    avg = 0
    num_runs = 0

    for i in range(1, 500*n):
        total += gcd(i, n, 1)
        num_runs += 1

    print(f"T_{n}: {total / num_runs:.2f}")

if len(sys.argv) < 2:
    print("Usage: ex1_7.py <number>")
    print("Approximates T_num and U_num")
else:
    num = int(sys.argv[1])
    m_known(num)
    n_known(num)

