머쓱이보다 키 큰 사람

2024. 6. 25. 18:00코딩테스트 입문

https://school.programmers.co.kr/learn/courses/30/lessons/120585

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


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


제한사항

  • 1 ≤ array의 길이 ≤ 100
  • 1 ≤ height ≤ 200
  • 1 ≤ array의 원소 ≤ 200

입출력 예

array height result
[149, 180, 192, 170] 167 3
[180, 120, 140] 190 0

입출력 예 설명
입출력 예 #1

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

입출력 예 #2

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

리스트 array에서 height보다 큰 숫자들을 찾으면 되는 간단한 문제입니다.

원래 이런 문제를 풀 때 저는 반복문 사용을 좀 꺼리는 편입니다만, 이 문제는 딱히 반복문 말고 풀이가 생각나지 않네요.

 

파이썬을 사용해 문제를 풀어보겠습니다.

def solution(array, height):
    answer = sum([1 if a > height else 0 for a in array])
    return answer

array에서 요소들을 a로 하나씩 빼옵니다.

그 다음, a가 height보다 크다면 1을, 아니라면 0을 부여해 새로운 리스트(temp)를 만듭니다.

마지막으로 temp의 총합이 곧 키가 큰 사람의 합이므로, sum을 해주어 값을 구합니다.

 

반복문 이외의 풀이가 딱히 생각나지 않네요.

'코딩테스트 입문' 카테고리의 다른 글

몫 구하기  (0) 2024.06.29
두 수의 곱  (0) 2024.06.28
두 수의 차  (0) 2024.06.27
두 수의 합  (0) 2024.06.26
중복된 숫자 개수  (0) 2024.06.24