본문 바로가기

알고리즘3

[JavaScript] 프로그래머스 - 부족한 금액 계산하기 /* 문제 : 놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지 구하시오 자료 : 이용료는 price원 처음 가지고 있던 금액 money 놀이기구의 이용 횟수 count 조건 : 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배 금액이 부족하지 않으면 0을 return 계획 : 처음 풀이에 적어뒀음 반성 : 좋은 방법들이 참 많군@!! */ const solution = (price, money, count) => { let sum = 0; // price + price*2 + price*3 + price * 4 // 반복문으로 count만큼 더한 후 money에서 뺀다. for (let i = 1; i 0 ? 0 : -(money - sum); }; // 가우스 공.. 2022. 9. 25.
[JavaScript] 문자열 내림차순으로 배치 /* 문제 : 문자열 내림차순으로 배치하기 자료 : 문자열 s 조건 : s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주 계획 : 정규식으로 소문자들만 sort() 한 다음에 정규식한 대문자랑 합침 반성 : 아직도 정규표현식이 익숙하지않아서 검색을 해서 풀었다. 따로 연습까지 해봤으니 이제는 바로바로 나오길!!!! */ const solution = (s) => { return s.split('').sort().reverse().join(''); }; const solution2 = (s) => { let uppercase = s.match(/[A-Z]/g).split('').sort().join(''); let lowercase = s.match(/[a-z]/g).split.. 2022. 9. 25.
[JavaScript] 프로그래머스 - 약수의 개수와 덧셈 /* 문제 : left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 자료 : 두 정수 left와 right 조건 : 계획 : 풀이 안에 적어놨음 반성 : 합을 먼저 다 구한뒤 빼는 방법도 있구나. 여러 방법을 생각하지 못하는 게 아쉬움... */ const solution = (left, right) => { let sum = 0; // 약수 구하는 법. left rgiht 순회하면서 1부터 i까지 커지는 j가 있다고하면 i % j === 0 이면 약수인 숫자 횟수에 추가 // 횟수 % 2 === 0이면 합을 더함 for (let i = left; i 2022. 9. 25.