백준 2562번 - 최댓값 with Python
Q. 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.
입력> 첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.
출력> 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.
https://www.acmicpc.net/problem/2562
2562번: 최댓값
9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어
www.acmicpc.net
먼저 이 문제에서 중요한 점
1. 리스트의 길이가 9로 주어져있다.
2. 최댓값을 도출해내고, 그 최댓값의 인덱스 또한 도출해주어야 한다.
문제 풀이를 잘 모르겠다면, 일단 이 두가지만 기억하고 다시 생각을 한 후 풀도록 하자.
이제 문제 풀이를 해보겠슴!
먼저 입력값들을 입력시킬려면 list를 생성해주어야 한다. 그리고 이 list를 N이라는 변수에다가 저장을 하겠다.
N = list[]
그 다음 첫 번째 입력값인 3부터 아홉 번째 입력값인 61까지 리스트에 추가를 시켜줘야 한다.
먼저 리스트에 값을 추가하는 메소드는 .append()함수를 이용하면 된다.
list타입인 N에 어떤 수를 추가하려면,
N.append(추가할 값)
을 이용해 추가해주면 된다. 우리는 입력값을 추가할 것이기 때문에
N.append(int(input())
코드를 활용해주면 된다.
이 코드를 총 9번 실행해주어야 하기 때문에
범위가 주어졌을 때의 반복문인 for문을 사용하도록 하겠다.
for i in range(9):
N.append(int(input()))
i는 0에서부터 8까지 이 값들을 추가할 수 있도록 만들어주었다.
이제 최댓값과 최댓값이 몇 번째 수인지, 즉 인덱스를 출력해주어야한다.
최댓값을 출력하는 함수는 max()이고,
인덱스를 출력하는 함수는 .index()이다.
print(max(N))
print(N.index(max(N))+1)
인덱스는 0부터 시작하기 때문에 추가적으로 +1을 해주었다.
이제 코드를 종합해서 보면
N = list()
for i in range(9):
N.append(int(input()))
print(max(N))
print(N.index(max(N))+1)
임을 알 수 있다.
'우당탕탕 파이썬 with 하루하나 알고리즘' 카테고리의 다른 글
백준 3052 파이썬 - 서로 다른 값의 개수 출력하기(feat. set함수) (0) | 2022.03.29 |
---|---|
백준 2577 파이썬 - 숫자가 총 몇 번 쓰여졌을까? (0) | 2022.03.28 |
백준 10818 파이썬 - 목록에서 최솟값, 최댓값 찾아내기!🔍 (0) | 2022.03.26 |
백준 1110 파이썬 - 더하기 사이클 (0) | 2022.03.25 |
백준 10951 파이썬 - 끝이라는 말 없이 끝내기.. (feat. EOF) (0) | 2022.03.24 |