import heapq
import math
import sys
from bisect import bisect_left
from collections import deque
input = sys.stdin.readline
print = sys.stdout.write
# sys.setrecursionlimit(10 ** 7)
# mod = 998244353
# MAX = 9_999_987_654_321_000_000
# dir4 = [[-1,0],[1,0],[0,-1],[0,1]]
# dir8 = [[-1,0],[-1,-1],[0,-1],[1,-1],[1,0],[1,1],[0,1],[-1,1]]
def solve():
n = int(input().rstrip())
a = []
b= []
for i in range(n):
a.append(list(input().rstrip()))
for i in range(n):
b.append(list(input().rstrip()))
ans = sys.maxsize
for z in range(1,5):
count = z%4
c = [["" for _ in range(n)]for _ in range(n)]
#round
for i in range(n):
for j in range(n):
c[j][n-i-1] = a[i][j]
#
for i in range(n):
for j in range(n):
if c[i][j] != b[i][j]:
count+=1
ans = min(count,ans)
#
for i in range(n):
for j in range(n):
a[i][j] = c[i][j]
print("%d"%ans)
if __name__ == '__main__':
solve()