[프로그래머스] 머쓱이보다 키 큰 사람 풀이

Jiumn·2022년 12월 3일
0
post-thumbnail

[프로그래머스] 머쓱이보다 키 큰 사람 풀이

문제 설명

머쓱이는 학교에서 키 순으로 줄을 설 때 몇 번째로 서야 하는지 궁금해졌습니다. 머쓱이네 반 친구들의 키가 담긴 정수 배열 array와 머쓱이의 키 height가 매개변수로 주어질 때, 머쓱이보다 키 큰 사람 수를 return 하도록 solution 함수를 완성해보세요.

입출력 예 설명

입출력 예 #1

149, 180, 192, 170 중 머쓱이보다 키가 큰 사람은 180, 192, 170으로 세 명입니다.
입출력 예 #2

180, 120, 140 중 190보다 큰 수는 없으므로 0명입니다.

풀이

[나의 답안]

def solution(array, height):
    count = 0
    n = len(array)
    for i in range(n):
        if array[i] > height:
            count += 1
    return count

for i in range 구문을 언젠가부터 (습관적으로) 배열의 길이만큼 반복할 때로 작성하고 있었는데, 사실 그렇게 할 필요가 없다.

for i in array

위와 같이 작성해도 배열 내부를 반복한다.
for i in range 구문은 정수의 범위 만큼 반복할 때 사용하는 거라 구분해서 잘 써야겠다.

[다른 답안]

def solution(array, height):
    array.append(height)
    array.sort(reverse=True)
    return array.index(height)
  • array.append(height): 머쓱이의 키를 기존 배열에 추가한다
  • array.sort(reverse=True): 머쓱이의 키가 추가된 배열을 정렬한다.
    (reverse=True 이므로, 내림차순으로 정렬)
  • return array.index(height): 내림차순으로 정렬했을 때 머쓱이의 인덱스를 출력한다. (인덱스는 0부터 시작되므로, 머쓱이보다 키 큰 사람의 수와 같다.)
profile
Back-End Wep Developer. 꾸준함이 능력이다.

0개의 댓글