알고리즘 코딩
두 정수 사이에 있는 정수들의 합을 구하는 알고리즘
가문비7
2023. 4. 15. 11:39
제목과 같은 코딩테스트 문제이다. 자세한 내용은 아래와 같다.
https://school.programmers.co.kr/learn/courses/30/lessons/12912
나의 순도 99% 답안은 아래와 같다. 자세한 내용은 주석 참조.
function solution(a, b) {
var answer = 0; // 일단 answer는 0 이다.
if(a <= b) {
for(i = a ; i <= b; i++) { // answer 0에다가 a 부터 시작해서 b까지의 정수를 반복해서 더한다. 중복해서 더해진 값이 answer에 들어간다.
answer = answer + i //
}
console.log(answer)
return answer;
} else {
for(i = b ; i <= a; i++) { // a > b 일때는 반대로 이렇게 진행된다.
answer = answer + i
}
console.log(answer)
return answer;
}
}
solution(-1, 2)
이 문제를 풀면서 어려웠던 점은 파라미터로 음수가 올수도 있다는 점이었다. 뭔가 복잡한 로직일 거 같았는데 아니었다. 그냥 양수 파라미터일 경우의 로직을 완성했는데 음수를 넣어도 잘 작동했다.
여기서 알게 된 점은, 일단 알고리즘의 일부라도 코딩을 하고 그 후에 디테일한 문제의 요구사항(음수 파라미터 같은)을 충족시켜도 된다는 점이다. 한단계 한단계 코드의 작동을 확인해 나가면서 코딩하는게 현실적이다.
처음부터 완성된 시나리오를 갖고 코딩할 수는 없는 것 같다.