
자연수 N이 입력되면 1부터 N까지의 합을 출력하는 프로그램을 작성하세요.
- 첫 번째 줄에 20이하의 자연수 N이 입력된다
- 첫 번째 줄에 1부터 N까지의 합을 출력한다.
- 입력 예) 6
- 출력) 21
풀이
const solution = (n) => {
let result = 0
for(let i = 1; i <= n; i++){
result = result+i
}
return result
}
solution(100)
동료의 코드
function solution(n){
return new Array(n).fill(1).reduce((acc, cur, i)=> {
return acc + (cur+i)
}, 0)
}
function solution(N) {
if (N % 2 === 0) {
return (1 + N) * (N / 2)
}
return (1 + N - 1) * ((N - 1) / 2) + N
}
console.log(solution(6)) // 21
console.log(solution(10)) // 55
후기 - 회사에서 매주 2회 알고리즘 스터디를하는데 여러 방식으로 풀기 위한 모임이 누가 더 특이하게 푸는가로 바뀐거 같다
'Algorithm' 카테고리의 다른 글
| [algorithm] 홀수 (0) | 2022.10.23 |
|---|---|
| [algorithm] 최솟값 구하기 (0) | 2022.10.23 |
| [algorithm] 연필 개수 (0) | 2022.10.20 |
| [algorithm] 삼각형 판별하기 (0) | 2022.10.10 |
| [algorithm] 세 수 중 최솟값 (0) | 2022.10.10 |