728x90
반응형
이번 글은 아래 글들을 참고하여 작성하였습니다.
수학자 이야기2-등차수열 합공식의 가우스
1부터 100까지의 합을 쉽게 계산한 가우스 중학교 수학 시간에 선생님께서 가우스 이야기를 해주신 적이 있다. 초등학생 때 1부터 100까지의 합을 쉽고 빠르게 계산했었노라고.. 그 이야기는 내게
tyrannohaha.com
[알고리즘] 가우스의 덧셈 공식
목표 가우스 덧셈에 대해 알아보자 가우스 덧셈을 이용한 문제 풀이 가우스 덧셈 등장 배경 천재적인 수학자 독일의 가우스는 어려서부터 수학에 재능을 보였다. 가우스가 초등학교 3학년 때 수
workshop-code.tistory.com
이번 문제에 대한 자세한 사항은 다음 링크를 참고하세요.
내 해답의 경우 for문을 활용한 코드이다. 1부터 count만큼 for문을 돌면서 price와 i를 곱하여 sum에 더한다. 그 다음 sum과 내가 가진 돈(money)를 비교하여 내가 가진 돈보다 sum이 많으면 sum에서 내가 가진 돈을 뺀 값을 반환하고 아니라면(돈이 부족하지 않다면) 0을 반환한다.
다른 사람의 풀이를 보다가 '가우스 합 공식'을 활용하여 이 문제를 푼 것을 보았다. 가우스의 합 공식은 n부터 m까지 수의 합을 구할 때 쓰이는데 이 문제에도 적용 가능하다. Solution 2가 바로 이 가우스 합 공식을 활용한 풀이이다.
Solutions
Solution 1.
function solution(price, money, count) { /* My Solution */ let sum = 0; for (let i = 1; i <= count; i++) { sum += price * i; } return sum > money ? sum - money : 0; }
Solution 2.
function solution(price, money, count) { /* Gauss Ver. */ const result = (price * count * (count + 1)) / 2 - money; return result > 0 ? result : 0; }
728x90
반응형
'👩💻 Programming > Coding Test 문제 풀이' 카테고리의 다른 글
[Programmers] level 1: 같은 숫자는 싫어 by JavaScript (0) | 2022.07.09 |
---|---|
[Programmers] level 1: 가운데 글자 가져오기 by JavaScript (0) | 2022.07.09 |
[Programmers] level 1: 나머지가 1이 되는 수 찾기 by JavaScript (0) | 2022.07.09 |
[Programmers] level 1: 최소직사각형 by JavaScript (0) | 2022.07.08 |
[Programmers] level 1: 2016년 by JavaScript (0) | 2022.07.08 |
댓글