윤일무이
[JavaScript] 프로그래머스 코딩테스트 레벨 1 : 두 정수 사이의 합 본문
728x90
문제 및 제한사항
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
**제한사항**
a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.
a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.
a와 b의 대소관계는 정해져있지 않습니다.
풀이 방법
몇 주 전 백준에서 파이썬으로 이런 문제를 푼 적이 있어서 쉽게 알고리즘을 그릴 수 있었다.
먼저 a, b의 대소관계가 정해져 있지 않으므로 더 큰 수와 더 작은 수를 max, min으로 지정하고 두 정수의 차를 변수 minus로 지정했다.
작은 수부터 큰 수까지 for문을 돌려 더하고, 만약 차가 없을 경우에는 아무 수나 리턴하라고 했으니 max를 리턴하도록 조건문을 짜주었다.
코드
function solution(a, b) {
let max = Math.max(a, b)
let min = Math.min(a, b)
let minus = max - min
let sum = 0;
for (let i = min; min <= max; min++) {
sum += min
}
if (minus === 0) {
sum = max
}
return sum
}728x90
'⚙️ 코딩테스트' 카테고리의 다른 글
| [JavaScript] 프로그래머스 코딩테스트 레벨 1 : 서울에서 김서방 찾기 (0) | 2023.04.06 |
|---|---|
| [JavaScript] 프로그래머스 코딩테스트 레벨 1 : 콜라츠 추측 (0) | 2023.04.06 |
| [JavaScript] 프로그래머스 코딩테스트 레벨 1 : 하샤드 수 (0) | 2023.04.06 |
| [JavaScript] 프로그래머스 코딩테스트 레벨 1 : 문자열을 정수로 바꾸기 (0) | 2023.04.06 |
| [JavaScript] 프로그래머스 코딩테스트 레벨 1 : 정수 내림차순으로 배치하기 (0) | 2023.04.06 |