code/[프로그래머스] python
[코딩 테스트 연습 입문] 가장 큰 수 찾기
오리는짹짹
2022. 12. 28. 09:31
문제
정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요.
❗제한사항❗
- 1 ≤ array의 길이 ≤ 100
- 0 ≤ array 원소 ≤ 1,000
- array에 중복된 숫자는 없습니다.
입출력 예
입출력 예 설명
입출력 예 #1
- 1, 8, 3 중 가장 큰 수는 8이고 인덱스 1에 있습니다.
입출력 예 #2
- 9, 10, 11, 8 중 가장 큰 수는 11이고 인덱스 2에 있습니다.
✔풀이
def solution(array):
sort_array=sorted(array)
max_number=sort_array[-1]
return [max_number,array.index(max_number)]
📝설명
array의 가장 큰 값을 찾아내고, 그 큰 값이 array의 몇번째 인덱스에 존재하는지 찾아야 한다.
가장 큰 값을 찾기 위해서 sort_array라는 변수에 sorted()를 통해 array를 정렬한다.
그러면 가장 작은 수에서 가장 큰 수 순으로 정렬이 되는데, 마지막에 위치한 숫자가 가장 크기 때문에, 인덱스 넘버[-1]를 뽑아서 max_number에 저장한다.
return값을 리스트로 뽑아내야 하므로, 가장 큰 수는 앞서 저장한 max_number과 array에서 max_number의 인덱스를 뽑아내면 끝!
➕개선한다면?
👑모범 답안
👀느낀 점
: 어렵게 생각하다보니까 코드가 길어진다.
그렇다고 내 코드가 틀린 건 아니지만, 보다 짧고 이해하기 쉬운 코드가 있다면! 그런 코드를 추구해야 한다.
내 코드의 방향성을 생각하면서 노력해야겠다.