파이썬 2차원 배열 입력받기 백준 2566번
a = [[int(x) for x in input().split()]for y in range(#)]
빨간 색으로 #이라고 해논 곳은 여러분들이 열을 몇 개 받으실지 적어 넣으시면 됩니다.
예를 들어
a = [[int(x) for x in input().split()]for y in range(9)] 라고 한다면 총 9개의 열을 입력받는다는 뜻이죠.
그나저나 제가 파이썬 백준 풀이 계속 올리는데 이를 통한 유입은 많이 없네요.
반성하고 더 열심히 해야겠습니다 ㅋ
그러면 [백준 2566번 최댓값] 파이썬 풀이 시작하도록 하겠습니다.
파이썬으로 배열 선언하기가 좀 생소한 것 빼고는 그렇게 어렵지 않은 문제입니다.
# a = [[0 for col in range(9)] for row in range(9)]
a = [[int(x) for x in input().split()]for y in range(9)]#how to declare 2 dimension array
max = a[0][0]
x, y = 0,0
for i in range(0, 9):
for j in range(0, 9):
if a[i][j] > max:
max = a[i][j]
x = i+1
y = j+1
print(max)
print(x, y)
맨 위에 # a = [[0 for col in range(9)] for row in range(9)] 이 부분 또한 배열을 선언하는 것입니다.
9*9배열을 선언하고 모두 0으로 초기화 하는 방법이죠.
아무튼 두 번 째 줄에서 a = [[int(x) for x in input().split()]for y in range(9)] , 이 부분에서 9X9배열을 입력받습니다.
그 후에 배열 0,0을 최대값이라고 가정합니다.
x,y는 최댓값 좌표를 잡아 놓은 것이구요.
그리고 배열의 모든 값들과 하나 하나 다 비교해서 배열 0,0보다 더 큰 값이 있으면 최댓값으로 저장합니다.
그렇게 배열의 모든 값들과 비교가 끝나면 최댓값을 찾고, 마지막줄에서 출력합니다.
배열은 0부터 시작하기 때문에 x와 y에 각각 +1씩 해줘야 됩니다.
'프로그래밍 > 파이썬' 카테고리의 다른 글
파이썬 한 줄에 여러 값 입력 받기 (0) | 2020.03.23 |
---|---|
파이썬 삼항연산자 백준 2609번 (0) | 2020.03.20 |
백준 17173번 배수 파이썬 풀이 (0) | 2020.03.16 |
파이썬 백준 15947번 아기 석환 (2) | 2020.03.15 |
백준 14624번 파이썬 풀이 (0) | 2020.03.15 |