본문 바로가기
백준 - 파이썬/단계별 - 7 (2차원 배열)

[백준/파이썬] 2566번 최댓값

by miiinn 2025. 5. 9.

 

[틀린 코드]

# 최댓값

matrix = []
for _ in range(9):
    a = list(map(int, input().split()))
    matrix.append(a)

# 최댓값과 인덱스 출력
max_value = matrix[0][0]
max_index = [0, 0]

for i in range(9):
    for j in range(9):
        if max_value < matrix[i][j]:
            max_value = matrix[i][j]
            max_index[0], max_index[1] = i+1, j+1

print(max_value)
print(*max_index)

 

틀린 이유 :

 

이 문제는 숨은 채점 기준이 있다. 최댓값이 중복된다면 마지막에 나온 값을 기준으로 인덱스를 출력해야 맞을 수 있는 문제이다.

if max_value <= matrix[i][j]:

따라서 여기서 <=로 바꿔서 또다른 최댓값이 나오면 그 값으로 index를 변경해주어야 한다.

 

[최종코드]

# 최댓값

matrix = []
for _ in range(3):
    a = list(map(int, input().split()))
    matrix.append(a)

# 최댓값과 인덱스 출력
max_value = matrix[0][0]
max_index = [0, 0]

for i in range(3):
    for j in range(3):
        if max_value <= matrix[i][j]:
            max_value = matrix[i][j]
            max_index[0], max_index[1] = i+1, j+1

print(max_value)
print(*max_index)