Algorithm/인프런(inflearn)86 [ 자바스크립트(JavaScript) ] section04 - 3 - 멘토링 📍 section04 - 3 - 멘토링(bruteForce) 조금 어려운 문제였다. bruteForce로 풀어야 하는 것은 알고 있었지만, 어떤 흐름으로 문제를 풀어야 할지 고민이 많았다. 강의를 봤는데도 이해가 잘 안 돼서 복습을 여러 번 했다. 결과적으로 이 문제의 핵심은 n명의 학생이 각각의 경우에 m번의 수학 성적 모두 mento와 mentee가 될 수 있는 조건이 맞는지 찾아야 하고, 그 안에서 수학 등수를 나타내는 idx를 고려해서 mentoIdx < menteeIdx인 조건을 찾을 수 있는지 물어보는 문제인 것 같다. 또, mento와 mentee는 같은 학생일 때는 성립하지 않음을 알아야 한다. 강의에서 4 중반 복문으로 풀었는데, 반복문의 개수가 많다 보니까 헷갈려서 수학 성적이 m개가 .. 2021. 8. 22. [ 자바스크립트(JavaScript) ] section04 - 2 - 뒤집은 소수 📍 section04 - 2 - 뒤집은 소수(bruteForce) 자연수를 뒤집을 때 string형을 사용하는 대신 number형 그대로 뒤집는 방법을 알면 좋을 것 같다. 그리고 소수를 판별할 때는 반복문의 범위를 i 1); if (sum > 1) { for (let i = 2; i 2021. 8. 22. [ 자바스크립트(JavaScript) ] section04 - 1 - 자릿수의 합 📍 section04 - 1 - 자릿수의 합(bruteForce) 이번 섹션은 완전탐색 `bruteForce`를 사용해 문제를 풀어보는 섹션이다. 자릿수의 합을 구하고 그 합이 최대인 것까지는 잘 구할 수 있었는데, 자릿수의 합이 같을 때 원래 숫자를 비교하여 더 큰 숫자를 리턴하는 방법이 명확하게 떠오르지 않았다. 어렵게 생각 할 필요 없이 처음 자릿수의 합을 비교할 때 자릿수의 합만 저장하는 것이 아니라 변수를 따로 만들어서 원래 숫자까지 저장하는 방법을 쓰면 된다. 이후에 자릿수의 합이 동일한 값이 나오면 원래 숫자와 비교해서 더 큰 값으로 갱신해주면 된다. let n = 7; let arr = [133, 532, 701, 1001, 145]; console.log(solution(n, arr));.. 2021. 8. 22. [ 자바스크립트(JavaScript) ] 28 - 문자열 압축 📍 28 - 문자열 압축 if-else문을 이용해서 구현했다. let s = "KKHSSSSSSSE"; console.log(solution(s)); // 나의코드 function solution(s) { let cnt = 1; let answer = ""; for (let x of s) { if (x === answer[answer.length - 1]) cnt++; else { if (cnt >= 2) answer += cnt; answer += x; cnt = 1; } } return answer; } // 강사님 코드 function solution(s) { let cnt = 1; let answer = ""; s += " "; for (let i=0; i1) answer+=cnt cnt = 1 .. 2021. 8. 17. [ 자바스크립트(JavaScript) ] 27 - 가장 짧은 문자거리 📍 27 - 가장 짧은 문자거리 target이 문자열 s에서 떨어진 최소거리를 출력하는 문제다. 여기서 고려해야하는 점이 있는데, 처음에 cnt = 0으로 초기화하고 문제를 풀고나서 강의를 들어보니까 맨 좌측을 기준으로 판단할때는 맨 좌측에 target이 없으므로 cnt를 제일 큰 숫자로 초기화해야한다는 것이다. 그렇게해야 reverse로 검사할때도 올바른 답을 도출해낼 수 있다. 잘 이해가 되지 않는다면 테스트 케이스 입력: tteachermodett 출력: 2 1 0 1 2 1 0 1 2 2 1 0 1 2와 같이 나오는지 확인해보자. let s = "teachermode"; let target = "e"; console.log(solution(s, target)); // 나의코드 function so.. 2021. 8. 17. 이전 1 ··· 9 10 11 12 13 14 15 ··· 18 다음