function solution(price, money, count) {
let total = 0;
for (let i = 1; i <= count; i++)
total += price * i
return total - money < 0 ? 0 : total - money
}
풀이 과정
간단하게 풀어냈다.
처음 가격 * 1 + 처음 가격 * 2 ... 처음 가격 * n
으로 계산하면 된다고 생각하여 for 문을 돌려 구현했다.
최종적으로 구한 값 - 소지한 돈 이 음수면, 돈이 모자르지 않기 때문에 0을 반환, 그렇지 않으면 차이값을 반환했다.
function solution(arr) {
var answer = [arr[0]];
for (let i = 1; i < arr.length; i++) {
if (arr[i - 1] != arr[i]) answer.push(arr[i]);
}
return answer;
}
풀이 과정
배열의 첫 요소는 무조건 포함이 되기 때문에, 우선 첫 요소를 배열에 넣어주고,
인덱스 1 부터 비교하여
현재 인덱스 값이 바로 앞의 인덱스 값과 같지 않은 경우만, 배열에 해당 요소를 추가하였다
아무래도 내장 메서드에 익숙해 져서 그런지 for 문을 사용하는 순간 뭔가 더 간단하게 구현할 수 있을거 같다 다른사람의 코드를 봤다.
다른사람의 코드
function solution(arr)
{
return arr.filter((val,index) => val != arr[index+1]);
}