🚧 [문제]
10개의 수를 입력 받아, 그 중에서 가장 큰 수를 출력하는 프로그램을 작성하라.
[input]
3
3 17 1 39 8 41 2 32 99 2
22 8 5 123 7 2 63 7 3 46
6 63 2 3 58 76 21 33 8 1
[output]
#1 99
#2 123
#3 76
import sys
sys.stdin = open("input.txt")
T = int(input())
# 버블소트와 친해지기 위해 버블소트를 사용하여 오름차순으로 정렬해보았다.
for tc in range(1, T+1):
numbers=list(map(int,input().split()))
for i in range(len(numbers)-1):
for j in range(len(numbers)-1-i):
if numbers[j]>numbers[j+1]:
numbers[j], numbers[j+1] = numbers[j+1], numbers[j]
# 버블소트로 인해 가장 마지막 인덱스가 최댓값이 저장된 numbers!
print("#{} {}".format(tc, numbers[-1]))
🍦 [복습]
# 1. 210218
버블정렬을 복습할 수 있어서 좋았다!
numbers[-1] 이렇게 출력하게되면 마지막 인덱스 값이 나오기 때문에 최댓값이 나온다.
그러나 이 방법은 파이써닉한 방법이기 때문에 일반적인 방법도 기억해둬야한다.
즉, slice 기능을 가지고 있지 않은 다른 언어로 알고리즘을 풀 때를 대비해!
전체 길이에서 -1을 빼주면 마지막 인덱스를 얻을 수 있다.
-1를 빼주는 이유는 인덱스는 0부터 시작하기 때문!
print(numbers[len(numbers)-1])
'# 3. APS > SWEA' 카테고리의 다른 글
SWEA # Python_D1_1933_간단한 N 의 약수 ✅ (0) | 2021.02.14 |
---|---|
SWEA # Python_D1_2050_알파벳을 숫자로 변환 ✅ (0) | 2021.02.14 |
SWEA # Python_D1_1545_거꾸로 출력해 보아요 ✅ (0) | 2021.02.14 |
SWEA # Python_D1_2047_신문 헤드라인 ✅ (0) | 2021.02.14 |
SWEA # Python_D1_2058_자릿수 더하기 ✅ (0) | 2021.02.14 |