Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- reduce함수
- React-Three-Fiber
- 프레임워크
- threejs
- codingtest
- 머쓱이
- 코딩테스트
- 코딩공부
- Programmers
- Javascript
- axios
- 웹팩
- 리엑트
- 헬스
- 자바스크립
- 코딩문제
- 자바스크립트
- 운동
- 반복문
- 코딩
- 코딩연습
- CSS
- 오름차순
- 코딩입문
- map함수
- 배열뒤집기
- MPA
- for문
- 프로그래머스
- react
Archives
- Today
- Total
SG의 개발 공부로그
머쓱이보다 키 큰 사람 [프로그래머스 코딩테스트 입문] 본문
728x90
머쓱이보다 키 큰 사람
문제 설명
머쓱이는 학교에서 키 순으로 줄을 설 때 몇 번째로 서야 하는지 궁금해졌습니다. 머쓱이네 반 친구들의 키가 담긴 정수 배열 array와 머쓱이의 키 height가 매개변수로 주어질 때, 머쓱이보다 키 큰 사람 수를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ array의 길이 ≤ 100
- 1 ≤ height ≤ 200
- 1 ≤ array의 원소 ≤ 200
입출력 예
array | num2 | 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명입니다.
풀이
for반복문을 돌려서 머쓱이의 키 (height) 보다 큰 수 일때마다 answer값을 증감연산자를 사용해서 1씩 증가시킨다
function solution (array,height){
let answer = 0;
for(i = 0; i < array.length; i++){
if(array[i] > height){
answer++
}
}
return answer
}
다른사람 풀이
map함수가 뱉는 배열은 사용(리턴)하진 않고 map함수를 활용해서 조건에 맞으면 answer를 증가시켜주도록 짠 코드이다.
친구들의 키를 담은 배열(array)을 map함수를 돌려서 머쓱이의 키(height)보다 큰수면 result++ 되도록 했다.
여기서 논리연산자를 활용했는데
&& 연산자는 먼저 왼쪽의 표현식을 처리하며, 값이 truthy라면 오른쪽의 표현식을 처리한다
그래서 머쓱이보다 키가 크면 true 이므로 오른쪽에 있던 result++ 가 실행된다.
반대로 연산자 ||는 먼저 왼쪽의 표현식을 처리하며 매개변수가 truthy라면 오른쪽의 표현식을 처리하지 않고
해당 값을 즉시 반환한다.
만약 매개변수가 falsy라면 오른쪽의 표현식을 처리한다.
function solution(array, height) {
let result = 0;
array.map((arr) => height < arr && result++);
return result;
}
728x90
'CodingTest' 카테고리의 다른 글
아이스 아메리카노 [프로그래머스 코딩테스트] (0) | 2023.01.23 |
---|---|
양꼬치 [프로그래머스 코딩테스트] (0) | 2023.01.20 |
짝수의 합 [프로그래머스 코딩테스트 입문] (0) | 2023.01.15 |
배열의 평균값 [프로그래머스 코딩테스트] (0) | 2023.01.06 |
두 수의 나눗셈 [프로그래머스 코딩테스트 입문] (0) | 2023.01.04 |