여기부터는 그냥 문제 보기도전에 for문 어디다쓰지 찾을정도로
for문 알고리즘이 너무 많았다
여기서 for문은 n에 길이만큼 뽑아 쓰는거랑 push를 사용하는게 핵심이였다
그리고 x만큼 i를 곱해줘야하니 i는 1부터 시작 !!
핵심 메소드
push() - 메서드는 배열의 끝에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환합니다.
여기도 for 문
입출력 예 설명
입출력 예 #1
이용금액이 3인 놀이기구를 4번 타고 싶은 고객이 현재 가진 금액이 20이라면, 총 필요한 놀이기구의 이용 금액은 30 (= 3+6+9+12) 이 되어 10만큼 부족하므로 10을 return 합니다.
입출력 예를 보면서 이해를 하기 시작했습니다
수식을 보면 놀이기구의 이용 금액은 30 (= 3+6+9+12)
3인 놀이 기구 3
가진돈 20
으로 보면 놀이기구 이용 금액 - 가진돈 하면
부족한 금액을 받을수 있습니다
그리고 !!금액이 부족하지 않으면 0을 return 이거를 보셔야해요
그래서 여기서 제가 삼항연산을 사용해 보았습니다
total_price += price * i;
이걸로 전체 금액 구하고
return money > total_price ? 0 : total_price - money;
money가 가진돈 보다 크다 ? ture면 0 false면 total_price - money 를 리턴 해줬습니다
중하 문제 나오면서 TIL 쓰는거도 힘들어집니다
왜냐하면 문제를 이해하고 어떻게 풀어갈지 말로 설명하기가 힘들어서
일단 해보겠습니다
일단 가차없이 for문 때리기
여기서는 arr에 길이만큼 해서 구했어요
if arr[i]가 5로 나눴을때 나머지가 0이면
answer에 push(arr[i])
여기서 푸쉬를 해줘야하니 위에 var answer = [];를 해줬어요
또다시 등장
return answer.length == 0? [-1] : answer.sort((a,b) => a-b);
삼항 answer에 길이가 0이 turu면 -1 false면 오른 차순으로 했어요 솔직히 answer.sort((a,b) => a-b); 이거는 이해하기 힘들어서 니중에 하기로 했어요