from datetime import timedelta


def calc_time(dist, destinations):
    """
    Given a Euclidean path distance and the total number of
    classrooms to visit, return the approximate time needed
    to deliver Singagrams to every classroom.

    :param dist: (float) Euclidean distance.
    :param destinations: (int) Number of destinations (classrooms).
    """

    # Euclidean units per second.
    # It takes about 2 minutes (120 seconds) to traverse the entire school diagonally,
    # and the school grid is a 200 x 300 Euclidean grid -> ~360.55 units diagonally.
    units_per_second = 360.55 / 120

    # Each Singagram takes about 90 seconds.
    return timedelta(seconds=destinations * 90 + dist / units_per_second)