Lv. 0 - 숫자 비교하기 풀이 과정
문제 설명
정수 num1
과 num2
가 매개변수로 주어집니다.
두 수가 같으면 1 다르면 -1을 return하도록 solution 함수를 완성해주세요.
제한사항
- 0 ≤ num1 ≤ 10,000
- 0 ≤ num2 ≤ 10,000
입출력 예
num1 | num2 | result |
---|---|---|
2 | 3 | -1 |
11 | 11 | 1 |
7 | 99 | -1 |
입출력 예 설명
3-1) 입출력 예 설명 #1
num1
이 2이고 num2
가 3이므로 다릅니다. 따라서 -1을 return합니다.
3-2) 입출력 예 설명 #2
num1
이 11이고 num2
가 11이므로 같습니다. 따라서 1을 return합니다.
3-3) 입출력 예 설명 #3
num1
이 7이고 num2
가 99이므로 다릅니다. 따라서 -1을 return합니다.
프로그래머스에서 제공한 코드
처음 프로그래머스에서 작성된 코드는 아래와 같다.
function solution(num1, num2) {
let answer = 0;
return answer;
}
문제 풀이
function solution(num1, num2) {
let answer = num1 == num2 ? 1 : -1;
return answer;
}
// 입출력 예 설명 #1
console.log(2, 3);
// 입출력 예 설명 #2
console.log(11, 11);
// 입출력 예 설명 #3
console.log(7, 99);
함수 선언
- 함수 이름은
solution
이며, 두 개의 매개변수num1
과num2
를 받는다.
풀이
-
삼항 연산자
를 사용하여 조건문을 간단하게 작성했습니다. - num1 == num2가 참이면 1을 반환하고, 거짓이면 -1을 반환합니다.
결과 반환
- 계산된 결과
answer
를 반환한다.
실행
-
solution(2, 3)
을 호출하면,false
로-1
을 반환한다. -
solution(11, 11)
을 호출하면,true
로1
을 반환한다. -
solution(7, 99)
을 호출하면,false
로-1
을 반환한다.
다른 사람의 풀이 참고
이전 글의 두수의 차와 마찬가지로 화살표 함수를 사용한 풀이와 주로 if문
을 사용한 풀이가 많았다.
아니면 변수를 생략하여 바로 반환하는 함수도 있었으며, 다양한 풀이가 있어서 재밌었다.
// 화살표 함수로 적용
const solution = (num1, num2) => num1 === num2 ? 1 : -1
// 변수 생략 적용
function solution(num1, num2) {
return (num1 === num2) ? 1 : -1;
}
링크
- 문제 링크: 문제 링크
- Git: rarrit github
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges