1. 나의 생각 흐름
a와 b사이의 수를 더해야하니까 for문을 사용해야겠다고 먼저 생각했다. 그 안의 숫자를 돌면서 더해주면 되니까 for문밖에는 떠오른게 없었다. 그래서 아래와 같은 코드를 짜게 되었다.
2. 내 코드
function solution(a, b) {
let answer = 0;
if(a < b){for(let i = a; i <= b; i++){answer += i;}}
else if(a === b){return answer = a;}
else{for(let i = b; i <= a; i++){answer += i;}}
return answer;
}
3. 다른 사람들의 코드
function adder(a, b){
let result = 0
//함수를 완성하세요
return (a+b)*(Math.abs(b-a)+1)/2;
}
가우스의 재림이다. 이런 생각은 어떻게 한걸까..! 반성하쟈..!!
function adder(a, b){
var result = (a<b)?a:b;
while(a!=b){
result += (a<b)?++a:++b;
}
return result;
}
삼항 연산자를 이용한 풀이법이다. 이렇게 쓰다니.. 정말 천재들이 너무 많은 것 같다.. 나도 이런 코드를 짜는 날이 오기를!
4. 결론
for문만 사용할게 아니라 while문도 사용해보고 삼항연산자도 써보는 등 다양한 생각을 키워나가야 할 것 같다.
'알고리즘' 카테고리의 다른 글
[Programmars] 자연수 뒤집어 배열로 만들기 (JavaScript) (0) | 2022.02.01 |
---|---|
[Programmars] 나누어 떨어지는 숫자 배열 (JavaScript) (0) | 2022.02.01 |
[Programmars] 수박수박수박수박수박수? (JavaScript) (0) | 2022.02.01 |
[Programmars] 같은 숫자는 싫어! (JavaScript) (0) | 2022.01.31 |
[Programmars] 두 개 뽑아서 더하기 (JavaScript) (0) | 2022.01.31 |
댓글