LV2 썸네일형 리스트형 6/24[문제풀이] 프로그래머스 Lv2 땅따먹기 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 function solution(land) { let temp; let totalLen = land.length; let selectLen = land[0].length; for(let x = 1; x 더보기 6/22[TIL] 프로그래머스 Lv2 카펫 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 function solution(brown, yellow) { let answer = []; let totalSize = brown + yellow; for (let x = 3; x = x && (y - 2) * (x - 2) === yellow) { answer.push(y); answer.push(x); break; } } return answer; } Colored by Color Scripter cs 이런 문제를 풀면서 느끼는 것은 무작정 코드를 작성하는 것 보다는 규칙을 찾아서 이에 맞게 수도코드를 작성하고 진행하면 더욱 수월히 풀리는 것 같다. 문제를 읽어보고 파악해보면 최소 세로 길이(x)는 3 이상 일 .. 더보기 6/16[문제풀이] 프로그래머스 Lv2 위장 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 function solution(clothes) { let count = 1; let obj = {} clothes.forEach(function(element){ if(obj[element[1]] >= 1) { obj[element[1]] += 1 } else { obj[element[1]] = 1 } }) for(let x in obj) count *= (obj[x] + 1) return count - 1; } Colored by Color Scripter cs 의상을 하나만을 입는 것이 아닌 여러가지를 부위 별로 입을 수 있기에 obj라는 객체를 선언해서 사용하며 중복되.. 더보기 6/15[문제풀이] 프로그래머스 Lv2 다리를 지나는 트럭 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 function solution(bridge_length, weight, truck_weights) { let onBridge = new Array(bridge_length - 1).fill(0); onBridge.push(truck_weights.shift()); let count = 1; while (onBridge.reduce((a, b) => a + b) > 0) { onBridge.shift(); if (weight - onBridge.reduce((a, b) => a + b) >= truck_weights[0]) { onBridge.push(t.. 더보기 6/14[문제풀이] 프로그래머스 Lv2 오픈채팅방 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 function solution(record) { const users = {}; record.forEach(log => { const [msg, userId, nickname] = log.split(' '); if(msg === 'Enter') { users[userId] = nickname; } else if(msg === 'Change'){ users[userId] = nickname; } }); const settingSentence = { "Enter" : nickname => `${nickname}님이 들어.. 더보기 6/9[문제풀이] 프로그래머스 Lv2 문자열 압축 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 function solution(s) { let answer = [s.length]; let maxiLen = Math.floor(s.length/2); for(let x=1; x 더보기 6/8[문제풀이] 프로그래머스 Lv2 스킬트리 [문제풀이] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 function solution(skill, skill_trees) { let answer = 0; for (let element of skill_trees) { let findValue = true; const filterdSkillTree = element .split("") .filter(e => skill.includes(e)) .join(""); for (let x = 0; x 더보기 6/4[문제풀이] 프로그래머스 Lv2 H-Index 문제를 읽고 또 읽어도 당최 무슨 말인지 이해를 하지 못해 한참을 구글링 했던 것 같다. 내가 이해력이 딸려서 이해를 못하는 것인지 설명이 부족한 것인지 한 동안 구글링을 한지 이해를 해서 문제를 풀게 되었다. 솔직히 개념만 이해한다면 그리 어렵지 않은 문제라고 생각이 든다. 하지만 이해하는데 어려웠다는 것... 내 문장 이해력에 의문(?)이 생겼다. H-Index 산출 방법을 한 번 정리 하여야 할 것 같다. 예를 들어 연구자의 발표 논문들과과 인용 횟수들이 존재한다고 생각할 때 Number 논문 명 인용횟수 0 논문 A 53 1 논문 B 26 2 논문 C 20 3 논문 D 13 4 논문 E 10 5 논문 F 4 6 논문 G 2 우선 논문명을 인용횟수인용 횟수 기준으로 내림차순 정렬을 한 후 인용 횟수.. 더보기 이전 1 2 3 다음