m, n, k = map(int, input().split())
hive = [list(input()) for _ in range(m)] #輸入蜂巢
dire = list(map(int, input().split())) #輸入前進方向
S = []
posii, posij = (m-1, 0) #起點 #i為行j為列
for i in range(k):
if dire[i] == 0: #前進方向0:退一行,列不變
posii = posii - 1
if posii < 0: posii = posii + 1 #超過就回原位
elif dire[i] == 1: #前進方向1:行不變,列+1
posij = posij +1
if posij > n-1: posij = posij - 1
elif dire[i] == 2: #前進方向2:行+1,列+1
posii = posii + 1
posij = posij + 1
if posii > m-1 or posij > n-1: #超過就回原位
posij -= 1
posii = posii - 1
elif dire[i] == 3: #前進方向3:行+1,列不變
posii = posii + 1
if posii > m-1: posii = posii - 1 #超過就回原位
elif dire[i] == 4: #前進方向4:行不變,列-1
posij = posij - 1
if posij < 0: posij = posij + 1 #超過就回原位
elif dire[i] == 5: #前進方向5:行-1,列-1
posii = posii - 1
posij = posij - 1
if posii < 0 or posij < 0: #超過就回原位
posii = posii + 1
posij += 1
S.append(hive[posii][posij]) #蜂巢代碼存成起來
single = ''.join(S) #將陣列中的一個個字母變一個沒有空格的字串
print(single) #輸出沒有空格的字串
norep = list(dict.fromkeys(S)) #字典鍵不能重複,存成一個列表
print(len(norep)) #輸出列表長度