# n = 3
# rows = [[2, 1, 3], [1, 1, 1], [9, 2, 7]]
n = int(input())
rows = []
for i in range(n):
    rows.append([int(x) for x in input().split(" ")])
unique_numbers = []
for i in range(n):
    for j in range(n):
        if(rows[i][j] not in unique_numbers):
            unique_numbers.append(rows[i][j])
unique_numbers = sorted(unique_numbers)
def count_global(lambda_function):
    c = 0
    for i in range(n):
        for j in range(n):
            if lambda_function(rows[i][j]):
                c += 1
    return c
def count_elements(x, y, lambda_function):
    c = 0
    for i in range(n):
        if lambda_function(rows[y][i]):
            c += 1
        if lambda_function(rows[i][x]):
            c += 1
    return c
cache = {}
cache[unique_numbers[0]] = count_global(lambda x: x == unique_numbers[0])
for i in range(1, len(unique_numbers)):
    c = 0
    for x in range(n):
        for y in range(n):
            if(rows[y][x] == unique_numbers[i]):
                c += count_elements(x, y, lambda x: x < unique_numbers[i])
    cache[unique_numbers[i]] = c + count_global(lambda x: x == unique_numbers[i])
def can_go_from(index):
    s = 0
    for i in range(index+1):
        s += cache[unique_numbers[i]]
    return s
answer = 0
for i in range(len(unique_numbers) - 1):
    answer += can_go_from(i)
print(answer)