line = input()
if not line:
    n = 0
else:
    n = int(line.strip())

x = {}
y = {}
z = set()

for _ in range(n):
    line = input()
    if not line:
        break
    parts = list(map(int, line.split()))
    if len(parts) < 3:
        break
    a, b, c = parts[0], parts[1], parts[2]
    
    if a not in x:
        x[a] = []
    x[a].append((b, c))
    
    if b not in y:
        y[b] = 0
    y[b] += 1
    
    if a not in y:
        y[a] = 0
        
    z.add(a)
    z.add(b)

q = []
m = {}

for i in z:
    if i not in y or y[i] == 0:
        q.append(i)
        m[i] = (0, 1)

cnt = 0
ans_a = 0
ans_b = 0

while len(q) > 0:
    u = q.pop(0)
    cnt += 1
    
    if u in m:
        ca, cb = m[u]
    else:
        ca, cb = 0, 0
    
    if ca > ans_a:
        ans_a = ca
        ans_b = cb
    elif ca == ans_a:
        if cb > ans_b:
            ans_b = cb
    
    if u in x:
        for v, w in x[u]:
            na = ca + w
            nb = cb + 1
            
            if v not in m:
                m[v] = (na, nb)
            else:
                oa, ob = m[v]
                if na > oa:
                    m[v] = (na, nb)
                elif na == oa and nb > ob:
                    m[v] = (na, nb)
            
            y[v] -= 1
            if y[v] == 0:
                q.append(v)

if cnt < len(z):
    print("-1")
else:
    print(str(ans_a) + " " + str(ans_b))