BOJ_2562 최댓값
- TOC {:toc}
이 글은 백준 온라인 저지의 2562번 문제를 파이썬(Python)으로 풀이한 것을 모아놓은 글입니다.
일종의 연습 기록이며 제가 정답을 받은 코드와 참고할만한 다른 코드를 같이 기록합니다. 필요한 경우 코드에 대한 해설을 기록합니다만 코드는 통과했어도 해설은 틀릴 수 있기 때문에 가볍게 참고해주시길 부탁드립니다. 피드백은 편하신 방법으로 자유롭게 주시면 감사하겠습니다.
2021.04.23
메모리 | 시간 | 코드 길이 |
---|---|---|
28776 KB | 68 ms | 118 B |
# 값과 인덱스를 받을 수 있는 max 튜플을 만든 뒤
max = (0, 0)
for i in range(9):
# 입력마다
N = int(input())
# 값을 비교하면서 더 큰 경우
if N > max[0]:
# max를 해당 값과 인덱스로 바꾼다.
max = (N, i + 1)
print(*max, sep="\n")
피드백
- 입력을 받으면서 리스트를 초기화한 다음에
max()
와index()
로 그 최댓값과 그 인덱스를 찾는 게 연산을 더 하는 것 같아서 사용하지 않았는데 많은 사람이 그렇게 작성한 것 같다. 속도도 별 차이 안 나고. - 그리고
max
를 튜플로 만든 것처럼 입력받을 때 인덱스를 함께 하나의 원소로 받으면sorted()
를 사용할 수도 있었다. 한 번 더 생각할 걸 그랬다.
참고 답안 1
N = [int(input()) for i in range(9)]
print(max(N), N.index(max(N)) + 1, end="\n")
참고 답안 2
print(*sorted([[int(input()), i + 1] for i in range(9)])[-1], sep="\n")
-
ps-python