Algorithm
[Algorithm][JavaScript] 프로그래머스 Level.1 - 두 수의 차 | 곱 | 몫
heew0n
2023. 11. 12. 17:24
✔️문제 1. 두수의 차
정수 num1과 num2가 주어질 때, num1에서 num2를 뺀 값을 return하도록 soltuion 함수를 완성해주세요.
✔️ 제한사항
- -50000 ≤ num1 ≤ 50000
- -50000 ≤ num2 ≤ 50000
✔️ 입출력 예
num1 num2 result
2 | 3 | -1 |
100 | 2 | 98 |
💡문제 풀이
// function solution(num1, num2) {
// var answer = 0;
// return answer;
// }
const solution = (num1, num2) => ~~(num1 / num2);
✔️문제 2. 두수의 곱
정수 num1, num2가 매개변수 주어집니다. num1과 num2를 곱한 값을 return 하도록 solution 함수를 완성해주세요.
✔️ 제한사항
- 0 ≤ num1 ≤ 100
- 0 ≤ num2 ≤ 100
✔️ 입출력 예
num1 num2 result
3 | 4 | 12 |
27 | 19 | 513 |
💡문제 풀이
// function solution(num1, num2) {
// var answer = 0;
// return answer;
// }
const solution = (num1, num2) => num1 * num2;
✔️문제 3. 두수의 몫
정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요.
✔️ 제한사항
- 0 < num1 ≤ 100
- 0 < num2 ≤ 100
✔️ 입출력 예
num1 num2 result
10 | 5 | 2 |
7 | 3 | 2 |
💡문제 풀이
// function solution(num1, num2) {
// var answer = 0;
// return answer;
// }
const solution = (num1, num2) => ~~(num1 / num2);
❗새롭게 배워가는 메서드
// 1. parseInt
const solution = (num1, num2) => parseInt(num1 / num2);
// 2. Math.floor
const solution = (num1, num2) => Math.floor(num1 / num2);
// 3. ~~ (double tilde)
const solution = (num1, num2) => ~~(num1 / num2);
// Math.floor와 같은 기능을 한다.
// ~는 비트 연산의 not이고, 숫자에 ~ 연산을 하면 소수점이 버려진다.
// ~~는 ~를 두 번 실행한 것으로, 숫자에 활용하면 원래 숫자에서 정수부분만 취할 수 있다.
// 수행 속도는 ~~가 가장 빠름.
~~ > Math.floor() > parseInt