본문 바로가기

프로그래머스176

[Programmers] Lv 2. 숫자 변환하기 https://school.programmers.co.kr/learn/courses/30/lessons/154538 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(x, y, n) { if (x === y) return 0; const dp = Array.from({ length: y + 1 }).fill(Infinity); dp[x] = 0; for (let i = x + 1; i = 0) dp[i] = dp[i - n] + 1; if (!(i % 2)) dp[i] = Math.min(dp[Math.floor(i / 2)].. 2023. 3. 9.
[Programmers] (월간 코드 챌린지 시즌1) Lv 2. 삼각 달팽이 https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n) { const arr = []; let [dir, cnt, col, row] = [0, 1, -1, 0]; while (n) { for (let i = 0; i < n; ++i) { col += ((dir === 0) ? 1 : (dir === 2) ? -1 : 0); row += ((dir === 1) ? 1 : (dir === 2) ? -1 : 0); if.. 2023. 3. 8.
[Programmers] (월간 코드 챌린지 시즌1) Lv 2. 쿼드압축 후 개수 세기 https://school.programmers.co.kr/learn/courses/30/lessons/68936 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr const solution = (arr) => { return (quadTree = (arr, y, x, n, result) => { for (let i = y; i < y + n; ++i) { for (let j = x; j < x + n; ++j) { if (arr[y][x] !== arr[i][j]) { n = Math.floor(n / 2); for (let [ny, nx] of [[y, .. 2023. 3. 8.
[Programmers] Lv 2. 덧칠하기 https://school.programmers.co.kr/learn/courses/30/lessons/161989 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n, m, section) { return section.reduce((acc, el) => { if (acc[0] 2023. 3. 7.
[Programmers] (2018 KAKAO BLIND RECRUITMENT) Lv 2. [1차] 프렌즈4블록 https://school.programmers.co.kr/learn/courses/30/lessons/17679 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(m, n, board) { const dirX = [0, 1, 1, 0], // 시계 방향 dirY = [0, 0, 1, 1]; board = board.map((v) => v.split("")); do { const remove = []; for (let i = 0; i < m - 1; ++i) { for (let j = 0; j < n - 1; ++j) { if.. 2023. 3. 6.
[Programmers] (Summer/Winter Coding(~2018)) Lv 2. 방문 길이 https://school.programmers.co.kr/learn/courses/30/lessons/49994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr const solution = (dirs) => { const [x, y, BOUNDARY] = [0, 1, 5]; const inArea = (command, pos) => (command === 'L' && pos[x] > -BOUNDARY) || (command === 'R' && pos[x] -BOUNDARY) .. 2023. 3. 3.
[Programmers] (2018 KAKAO BLIND RECRUITMENT) Lv 2. [3차] 파일명 정렬 https://school.programmers.co.kr/learn/courses/30/lessons/17686 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(files) { return files.map((file) => { const HEAD = file.match(/\D+/g)[0], NUMBER = file.match(/\d+/g)[0], TAIL = file.slice(file.indexOf(NUMBER) + NUMBER.length, file.length); return { HEAD, NUMBER, TAIL }.. 2023. 3. 3.
[Programmers] Lv 2. 롤케이크 자르기 https://school.programmers.co.kr/learn/courses/30/lessons/132265 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(topping) { const [lDic, lSizeArr, rDic, rSizeArr] = [new Set(), [], new Set(), []]; topping.forEach((el, idx) => { lDic.add(el); if (idx !== 0) rDic.add(topping.at(-idx)); lSizeArr.push(lDic.size); rSizeA.. 2023. 2. 27.
[Programmers] (2021 KAKAO BLIND RECRUITMENT) Lv 2. 메뉴 리뉴얼 https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr const combination = (idx, start, data, n, str, obj) => { if (start === n) { const str_tmp = data.join(""); obj[str_tmp] = ((obj[str_tmp]) || 0) + 1; return obj; } for (let i = idx; i < str.length; ++i) { data[start] = str[i.. 2023. 2. 25.
[Programmers] (깊이/너비 우선 탐색(DFS/BFS)) Lv 2. 게임 맵 최단거리 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(maps) { return (bfs = (startY, startX) => { const [height, width] = [maps.length, maps[0].length], [queue, valueVisit] = [[], maps.map(i => i.map(v => 0))]; const directionY = [0, 0, -1, 1], directionX = [-.. 2023. 2. 25.