キャンディゲーム
白駿3085
にゅうしゅつりょく
入出力3 CCPCPCPPPC 34 PPPPPPCZYCCPPC 45 YCPZYCPCPPPYCYCCPPZ 4
方法
:
知るところ
注意事項
値の比較にmax関数を使用し、タイムアウトしました.
if文で直接比較します.
コード#コード#
import sys
n = int(sys.stdin.readline())
board = [list(sys.stdin.readline()) for _ in range(n)]
def check(board):
ans = 1
# 열 순회
for i in range(n):
cnt = 1
for j in range(n-1):
if board[i][j] == board[i][j+1]:
cnt += 1
else:
cnt = 1
if cnt > ans:
ans = cnt
# 행 순회
cnt = 1
for j in range(n-1):
if board[j][i] == board[j+1][i]:
cnt += 1
else:
cnt = 1
if cnt > ans:
ans = cnt
return ans
answer = 0
for i in range(n):
for j in range(n):
# 행 바꾸기
if i+1 < n:
board[i][j], board[i+1][j] = board[i+1][j], board[i][j]
tmp = check(board)
if tmp > answer:
answer = tmp
board[i][j], board[i+1][j] = board[i+1][j], board[i][j]
# 열 바꾸기
if j+1 < n:
board[i][j], board[i][j+1] = board[i][j+1], board[i][j]
tmp = check(board)
if tmp > answer:
answer = tmp
board[i][j], board[i][j+1] = board[i][j+1], board[i][j]
print(answer)
Reference
この問題について(キャンディゲーム), 我々は、より多くの情報をここで見つけました https://velog.io/@sezeom/사탕-게임テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol