TigerDemon

백준 2566번 파이썬으로 풀기 본문

파이썬 문제풀이/백준

백준 2566번 파이썬으로 풀기

호랑2D 2023. 11. 15. 15:41

문제

<그림 1>과 같이 9×9 격자판에 쓰여진 81개의 자연수 또는 0이 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 행 몇 열에 위치한 수인지 구하는 프로그램을 작성하시오. 예를 들어, 다음과 같이 81개의 수가 주어지면 이들 중 최댓값은 90이고, 이 값은 5행 7열에 위치한다.

입력

첫째 줄부터 아홉 번째 줄까지 한 줄에 아홉 개씩 수가 주어진다. 주어지는 수는 100보다 작은 자연수 또는 0이다.

 

출력

첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다.

# 9x9 그리드의 숫자를 저장할 빈 리스트 초기화
numlist = []

# 최대 숫자와 해당 숫자의 행 및 열을 저장할 변수 초기화
tmp, row, col = 0, 0, 0

# 사용자가 제공한 값으로 numlist를 채우는 입력 루프
for i in range(9):
    a = list(map(int, input().split()))
    numlist.append(a)

# numlist를 반복하여 최대 숫자와 해당 위치를 찾는 루프
for i in range(9):
    for j in range(9):
        # 현재 숫자가 현재 최대값보다 크거나 같은지 확인
        if numlist[i][j] >= tmp:
            tmp = numlist[i][j]
            row = i+1
            col = j+1

# 적절한 형식으로 결과를 출력
print('{}\n{} {}'.format(tmp, row, col))

 

 

 

https://www.acmicpc.net/problem/2566

 

2566번: 최댓값

첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다.

www.acmicpc.net