728x90
프로그래머스 코딩테스트 연습 문제지
코딩 영역
Lv.1성명 |
수험 번호 | - |
두 정수 사이의 합
18. 두 정수 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는 -10,000,000 이상 10,000,000 이하인 정수입니다.
* a와 b의 대소관계는 정해져있지 않습니다.
function solution(a, b) {
var answer = 0;
if(a>=b){
for(let i=b; i<=a; i++){
answer+=i;
}
}else{
for(let j=a; j<=b; j++){
answer+=j;
}
}
return answer;
}
나의 풀이
a와 b의 대소관계가 정해지지 않았으므로 케이스를 나눠서 코드를 짜보았습니다.
function adder(a, b){
var result = 0
return (a+b)*(Math.abs(b-a)+1)/2;
}
다른 풀이
가우스 공식을 여기서 보다니..
function solution(a, b) {
var answer = 0;
var min = Math.min(a, b);
var max = Math.max(a, b);
for(var i=min; i <= max; i++){
answer+=i;
}
return answer;
}
다른 풀이
a와 b 중 최댓값과 최솟값을 구하고 for문을 활용하여 그 두 수 사이의 값을 더해주었네요 !
'프로그래머스' 카테고리의 다른 글
프로그래머스 | Lv.1 같은 숫자는 싫어 (3) | 2022.11.15 |
---|---|
프로그래머스 | Lv.1 가운데 글자 가져오기 (1) | 2022.11.14 |
프로그래머스 | Lv.1 정수 내림차순으로 배치하기 (1) | 2022.11.14 |
프로그래머스 | Lv.1 하샤드 수 (1) | 2022.11.14 |
프로그래머스 | Lv.1 문자열을 정수로 바꾸기 (1) | 2022.11.10 |
댓글