728x90
문제
9개의 서로 다른 자연수가 주어질 때,
이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.
https://www.acmicpc.net/problem/2562
입력
첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.
출력
첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.
예제 입력 1
3
29
38
12
57
74
40
85
61
예제 출력 1
85
8
문제 풀이
L = []
for _ in range(9):
L.append(int(input()))
print(max(L))
print(L.index(max(L))+1)
먼저 리스트 변수를 선언한 뒤, 문제에서 주어진 것처럼 9회에 나누어 숫자를 입력 받았습니다.
이 과정에서 append 함수를 활용하여 바로 리스트에 추가해주었습니다.
이후 max 함수로 최댓값을 출력하고, 인덱스 함수로 최댓값의 위치를 출력했습니다.
1. append 함수
List.append(x)
리스트의 가장 마지막에 x를 추가하는 함수입니다.
L = [1, 2, 3]
L.append(4)
print(a)
-------------
[1, 2, 3, 4]
2. index 함수
List.index(x)
리스트에 x 값이 있으면 x의 인덱스 값을 반환합니다.
L = [1, 2, 3, 3, 4, 5, 6]
print(L.index(1))
print(L.index(3))
-------------
0
2
저처럼 파이썬을 독학하시는 분들에게 도움이 되길 바라며,
혹 더 좋은 방법이 있거나 오류가 있다면 편하게 말씀 부탁드립니다.
728x90