JS62 [Javascript/PGS] Lv.3 : 베스트앨범(해시) https://school.programmers.co.kr/learn/courses/30/lessons/42579?language=javascript 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 예전에 C++로 풀었던 문제인데JS로 다시 풀어보았다. (몇년만에.....) 예전 글 확인해보니 딱 3년전 이맘때다ㅋㅋㅋ해시 함수 Map도 까먹은 심각한 상태이다 . 공부하자! 나의 풀이function solution(genres, plays) { let answer = []; let g_map = new Map(); // 장르: 재생횟수 let n_map = new Map(); // 장르: [고유.. 2026. 4. 15. [Javascript/PGS] Lv.3 : 문자열 압축 (2020 KAKAO) https://school.programmers.co.kr/learn/courses/30/lessons/60057?language=javascript 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr Cpp로 해결했던 문제인데, JS로 다시 풀어보았다.문자열 함수 slice를 사용하여 코드 길이를 줄였고,조금 더 효율적으로길이를 배열에 저장하지 않고, 바로 비교하는 식으로 최솟값을 갱신하였다 나의 풀이function solution(s) { let answer = 1000; if(s.length === 1) return 1; for(let i=1; i 2026. 4. 8. [C++/PGS] Lv.3 : 문자열 압축 (2020 KAKAO) https://school.programmers.co.kr/learn/courses/30/lessons/60057# 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 피지컬 훈련되는 좋은 문제~!로직도 고민해보아야 하고,무엇보다 예상치못했다가 아차! 싶었던 반례도 존재한다.그래도 문제에서 설명하는 대로 차분히 구현하면 해결할 수 있음문자열을 새로 구하는 방법도 있지만, 나는 길이만 저장해서 좀 더 효율적으로 풀 수 있었다 (스포주의) 1. 문자열을 1부터 전체 길이/2까지 나누어 벡터1에 저장2. '반복된 횟수 + 문자열' 의 길이를 구하고 벡터2에 저장하여 Min값 찾기 1. 문자 갯수 카운팅 시, 2자리 숫자 .. 2026. 4. 8. [Javascript/PGS] Lv.2 : 주식가격 (다시 풀어보기) https://school.programmers.co.kr/learn/courses/30/lessons/42584 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 정확한 풀이가 아니고, 시간복잡도를 고려하지 않은 이중반복문으로 해결했다>>> 다음에 다시 풀어보기...!!! 정석적인 방법으로 해결하지 않아도 통과가 가능한 이유는 질문게시판에 어느 분께서 설명을 해주심.(게시판을 보니 문제가 더럽다는 후기가 많음) 나의 풀이#include #include #include using namespace std;vector solution(vector prices) { int p_len = prices.size(.. 2026. 4. 8. [Javascript/PGS] Lv.2 : [1차] 뉴스 클러스터링 (2018 KAKAO) https://school.programmers.co.kr/learn/courses/30/lessons/17677?language=javascript 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr프로그래머스 레벨 2. 취업하고 나니 정신없어서 올해 첫 알고리즘이다;;피지컬(타이핑 속도)도 많이 죽었고 알고리즘 함수 다 까먹음 ㅋ....다시 꾸준히 공부하기!그래도 실무를 하다보니 내가 무엇을/어떻게 구현해야하는지 고민을 많이 해야해서로직이 바로바로 생각나고 이걸 차근차근 구현할 수 있는 능력이 생기는 것 같다. 대/소문자 구분이 없으므로 toLowerCase를 사용해주었고,알파벳이 아닌 것들이 포함된다면 모두 제.. 2026. 3. 9. [Javascript/PGS] Lv.2 : [1차] 캐시 (2018 KAKAO) https://school.programmers.co.kr/learn/courses/30/lessons/17680프로그래머스 레벨 2.캐시 저장공간을 구현하는 단순 구현 문제이다. 캐시 교체 알고리즘은 LRU(Least Recently Used)이므로, 최근 사용했던 순위를 기억해주어야 한다.따라서, 캐시 배열에 가장 최근 사용한 것은 1로,나머지 것들은 해당 위치의 값에 1씩 더해주었다. 주의할 점은 대소문자 구분을 없애야 한다는 것! 나의 경우는 js라서 toLowerCase 함수를 사용했다. 나의 풀이function solution(cacheSize, cities) { var answer = 0; let cache = new Array(cacheSize).fill(["",0]); .. 2025. 5. 14. 이전 1 2 3 4 ··· 11 다음 728x90 반응형