알고리즘 스터디/[프로그래머스] 연습문제27 [알고리즘] 문자열 내 p와 y의 개수 문제풀이(자바스크립트 javascript) (문제풀이 생각) 1. if ( s의 'p'의 개수와 s의 'y'의 개수가 같으면 ) 2. return true 3. else { return false } 4. 대문자 소문자 구별하지 않는다 // 전부다 소문자로 만들어주기 👌 개수 세기 전 소문자로 만들어주기! toLowerCase() // 소문자 만드는 함수 let change = s.toLowerCase(); // change 라고 변수값을 주는데 변수값은 s이고 s는 다 소문자 👌 p의 개수를 세자 s의 소문자인 애들이 change라고 바뀌었고 p만 가지고 오려면 split(" ") p만 가지고 온 것의 개수는 길이로 구하면 되니까 let countp = change.split("p").length; // 이렇게 let county = chang.. 2022. 7. 16. [알고리즘] 내적 문제풀이(자바스크립트 javascript) (문제풀이 생각) 1. a[i]는 a의 길이보다 1개 적게 2. answer 값을 더하자 👌 for(let i=0; i 2022. 7. 16. [알고리즘] 나누어 떨어지는 숫자 배열 문제풀이(자바스크립트 javascript) (문제풀이 생각) 1. 함수 모양 // if arr의 [i]가 divisor로 나누었을 때, 나머지가 0이되면 // return 해줘 arr[i] // 나머지 0인 것이 없으면, // return [-1] 2. return 값은 오름차순 이다! 👌 arr의 [] 값을 가져와야 하니까 [i]라고 해주자 for(let i = 0; i a-b); // 이걸 return 위에 넣어주면 된다. 오름차순 정렬 : sort((a,b) => a-b) ✅ 최종 코드 function solution(arr, divisor) { var answer = []; for(let i=0; i a-b); return answer; } 2022. 7. 16. [알고리즘] 2016년 문제풀이(자바스크립트 javascript) (시작하기 전에 반드시 알아야 할 점) ✅ 요일 계산하는 법! 날수를 계산해서 나누기 7 = 나머지 값! 1일 경우 // 월요일 2일 경우 // 화요일 ----- 0일 경우 // 일요일 ✅ 예를 들어서 1년 1월 1일은 날수가 1일 % 7 = 나머지 1 1일이니까 // 월요일 여기서 헷갈리면 안 되는 것은 아예 처음인 1년 1월 1일로 설정했을 때 그렇다는 것이고 👌 여기서 2016년 1월 1일이 금요일이라고 했으니까 (원래) 1일 경우 월요일 // (현재) 몇일인지 + 4를 하면 금요일을 도출할 수 있다. 1월 2일은 날수 2일이고 2일 % 7 = 나머지 2 // 즉, 2 + 4는 6이니까 토요일을 산출할 수 있다. ✅ 제한조건보면 2016년은 "윤년"이다! 윤년 // 2월이 29일까지 있는 날 // .. 2022. 7. 16. [알고리즘] 부족한 금액 계산하기 문제풀이(자바스크립트 javascript) (문제 해결) 1. 'x만큼 간격이 있는' 알고리즘 문제풀이와 방법을 비슷하게 사용할 수 있다. count를 나열해서 price와 곱하면 price만큼 증가하는 값을 표현할 수 있다. 2. 이 값에서 money를 빼면 된다. 3. 이 값이 0보다 크면 0을 return하기 (해결 방법) 👌 먼저 count 갯수 설정, count 는 자연수니까 1부터 시작 for(let i = 1; i 0 ? // return 할건데 answer가 0보다 크면 answer : 0 ; // answer는 0이라고 해줘, if 쓸 때처럼 해석하면 무리없이 해석 완료 ✅ 최종 코드 function solution(price, money, count) { var answer = 0; let total = 0; for(let i .. 2022. 7. 16. [알고리즘] x만큼 간격이 있는 n개의 숫자 문제풀이(자바스크립트 javascript) (문제풀이 생각) 1. x만큼 증가한다? 2. n개의 리스트를 끌어낸다. (해결 방법) 1. n의 제한 조건을 보면 1000이하인 "자연수"라고 한다. 그럼 n만큼 반복해서 나열할 때, n은 1부터 시작하면 된다. 👌 for(let i=1; i 2022. 7. 16. 이전 1 2 3 4 5 다음