python,本地能过,但是第2点后是wa,求助。
查看原帖
python,本地能过,但是第2点后是wa,求助。
1226107
renliantao楼主2024/1/7 19:34
n=int(input())
shape={}
for i in range(n):
	shape[i]=[]
	s=input()
	for j in s:
		shape[i].append(j)
new={}
for i in range(n):
	new[i]=[]
	s=input()
	for j in s:
		new[i].append(j)
turn1={} #90-degree	
for i in range(n):
	turn1[i]=[]	
	for j in range(n):		
		turn1[i].append(shape[n-j-1][i])
turn2={} #180-degree		
for i in range(n):
	turn2[i]=[]	
	for j in range(n):		
		turn2[i].append(shape[n-i-1][n-j-1])
turn3={} #270-degree		
for i in range(n):
	turn3[i]=[]	
	for j in range(n):		
		turn3[i].append(shape[j][n-i-1])
turn4={} #horizontal	
for i in range(n):
	turn4[i]=[]	
	for j in range(n):		
		turn4[i].append(shape[i][n-j-1])
turn5={} #horizontal+90
for i in range(n):
	turn5[i]=[]	
	for j in range(n):		
		turn5[i].append(shape[j][i])
turn6={} #horizontal+180
for i in range(n):
	turn6[i]=[]	
	for j in range(n):		
		turn6[i].append(shape[n-i-1][j])
turn7={} #horizontal+270
for i in range(n):
	turn7[i]=[]	
	for j in range(n):		
		turn7[i].append(shape[n-j-1][n-i-1])
method=[0,0,0,0,0,0,0,0,0,0,0]
for i in range(n):
	if new[i]==turn1[i]:
		method[1]+=1  #90-degree	
	if new[i]==turn2[i]:
		method[2]+=1  #180-degree	
	if new[i]==turn3[i]:
		method[3]+=1  #270-degree
	if new[i]==turn4[i]:
		method[4]+=1  #horizontal
	if new[i]==turn5[i]:
		method[8]+=1  #horizontal+90
	if new[i]==turn6[i]:
		method[9]+=1  #horizontal+180
	if new[i]==turn7[i]:
		method[10]+=1  #horizontal+270
	if new[i]==shape[i]:
		method[6]+=1  #no change
answer=method.index(max(method))
if answer>7:
	answer=5
if max(method)<n:
	answer=7
print(answer)

2024/1/7 19:34
加载中...