BOJ_11557 Yangjojang of The Year
- TOC {:toc}
이 글은 백준 온라인 저지의 11557번 문제를 파이썬(Python)으로 풀이한 것을 모아놓은 글입니다.
일종의 연습 기록이며 제가 정답을 받은 코드와 참고할만한 다른 코드를 같이 기록합니다. 필요한 경우 코드에 대한 해설을 기록합니다만 코드는 통과했어도 해설은 틀릴 수 있기 때문에 가볍게 참고해주시길 부탁드립니다. 피드백은 편하신 방법으로 자유롭게 주시면 감사하겠습니다.
2021.03.27
메모리 | 시간 | 코드 길이 |
---|---|---|
28776 KB | 76 ms | 238 B |
T = int(input())
for _ in range(T):
N = int(input())
univ = []
amount = []
for _ in range(N):
u, a = input().split()
# 입력받은 값을 각각 `univ`와 `amount`에 추가한다.
univ.append(u)
amount.append(int(a))
# max(amount): `amount` 중 최곳값을 갖는 원소의
# amount.index(...): 인덱스를 구해
# print(univ[...]): `univ`에서 그 인덱스의 위치에 있는 원소를 출력한다.
print(univ[amount.index(max(amount))])
아이디어 & 풀이
입력받은 값을 각각 univ
와 amount
에 추가한다.
univ
와amount
는 인덱스를 매개로 짝지어지게 된다.
amount
중 최곳값을 갖는 원소의 인덱스를 구해 univ
에서 그 인덱스에 해당하는 원소를 출력한다.
참고 답안
for _ in range(int(input())):
# 결괏값 초기화
result = ["", -1]
for _ in range(int(input())):
S, L = input().split()
# 입력받은 술의 양이 결괏값보다 크면
# 결괏값의 학교와 술의 양을 대체
if result[1] < int(L):
result = [S, int(L)]
# 최종 결괏값의 학교 이름을 출력
print(result[0])
-
ps-python