목록Algorithm (31)
개발일기
문제 설명 문자열 리스트 str_list에는 "u", "d", "l", "r" 네 개의 문자열이 여러 개 저장되어 있습니다. str_list에서 "l"과 "r" 중 먼저 나오는 문자열이 "l"이라면 해당 문자열을 기준으로 왼쪽에 있는 문자열들을 순서대로 담은 리스트를, 먼저 나오는 문자열이 "r"이라면 해당 문자열을 기준으로 오른쪽에 있는 문자열들을 순서대로 담은 리스트를 return하도록 solution 함수를 완성해주세요. "l"이나 "r"이 없다면 빈 리스트를 return합니다. 제한사항 1 ≤ str_list의 길이 ≤ 20str_list는 "u", "d", "l", "r" 네 개의 문자열로 이루어져 있습니다. 입출력 예 str_listresult["u", "u", "l", "r"]["u", "u..
개요사실 프로그래머스 문제는 그냥 풀고 끝이였는데 요즘 블로그 까지 쓰는 이유는 무엇인가 하면 슬슬 어려워 지기 시작하기 때문이다. 문제 자체가 이해가 안되는 것도 있고, 어떤 식으로 풀어야 할지 감도 안잡히는 문제도 많다. 그렇기 때문에 많이 찾아보고 문제를 풀게 되는데 이런식으로 푸는게 나는 그렇게 도움이 되지 않는다고 생각하지만 정말 아무 생각없이 풀이를 따라한다면 문제가 된다고 생각한다. 그래서 기록하려고 한다. 어려운 문제들을. 문제 설명 정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱하고 다시 1을 더합니다.이러한 작업을 x번 반복한 결과인 배열을 arr(x)라고 표현했을 때, arr(x) = arr(x..
문제 임의의 문자열이 주어졌을 때 문자 "a", "b", "c"를 구분자로 사용해 문자열을 나누고자 합니다. 예를 들어 주어진 문자열이 "baconlettucetomato"라면 나눠진 문자열 목록은 ["onlettu", "etom", "to"] 가 됩니다. 문자열 myStr이 주어졌을 때 위 예시와 같이 "a", "b", "c"를 사용해 나눠진 문자열을 순서대로 저장한 배열을 return 하는 solution 함수를 완성해 주세요. 단, 두 구분자 사이에 다른 문자가 없을 경우에는 아무것도 저장하지 않으며, return할 배열이 빈 배열이라면 ["EMPTY"]를 return 합니다. 제한 사항 1 ≤ myStr의 길이 ≤ 1,000,000myStr은 알파벳 소문자로 이루어진 문자열 입니다. 풀이funct..
문제 정수 n과 정수 3개가 담긴 리스트 slicer 그리고 정수 여러 개가 담긴 리스트 num_list가 주어집니다. slicer에 담긴 정수를 차례대로 a, b, c라고 할 때, n에 따라 다음과 같이 num_list를 슬라이싱 하려고 합니다. n = 1 : num_list의 0번 인덱스부터 b번 인덱스까지 n = 2 : num_list의 a번 인덱스부터 마지막 인덱스까지 n = 3 : num_list의 a번 인덱스부터 b번 인덱스까지 n = 4 : num_list의 a번 인덱스부터 b번 인덱스까지 c 간격으로올바르게 슬라이싱한 리스트를 return하도록 solution 함수를 완성해주세요. 제한사항n 은 1, 2, 3, 4 중 하나입니다.slicer의 길이 = 3slicer에 담긴 정수를 차례대로 ..

문제 입출력 풀이function solution(arr) { var answer = []; if (!arr.includes(2)) { return [-1]; } return arr.slice(arr.indexOf(2), arr.lastIndexOf(2) + 1);} 풀이 내용 문제를 보고 제일 먼저 생각 났던 것은 indexOf와 lastIndexOf, 그리고 slice 이다. 단순하게 2가 위치해 있는 부분을 찾을 수 있는 메서드를 먼저 생각 했고, 부가적인 조건을 클리어 해보니 위의 풀이가 나온 것 같다. 1. 배열에 2가 없는 조건을 먼저 클리어 하기 위해 includes를 사용해서 arr의 배열에 2가 없을 시 [-1]을 리턴 하도록 했다.2. 2와 2사이의 요소들을 가져와야 하기 때..

예비군을 갔다와도 알고리즘은 풀어야지,,, 이번 문제는 그렇게 필요없을 수도 있지만 ! 내가 그렇게 까먹고 까먹던 for in, for of 중 for of 를 활용한 문제이다. 그냥 문제를 보고 for of가 생각난게 반가워서 작성한다. 문제 풀이 function solution(arr) { var answer = []; for(const item of arr){ console.log(item) // Expected output: 5 // Expected output: 1 // Expected output: 4 for(let i = 0; i

문제를 보고 그 어떤 방법도 떠오르지 않았음을 알림,,, 이 문제의 핵심은 split이라고 생각한다. 하지만 split의 s도 생각나지 않았다. 구글링을 했고, 기억하기 위해 기록해 둔다. 문제 풀이 function solution(myString) { const splits = myString.split("x") console.log(splits) // Expected output: ["o", "oo", "o", "", "o", ""] const answer = splits.map((item)=>{ return item.length }) console.log(answer) // Expected output: [1, 2, 1, 0, 1, 0] return answer } solution("oxooxoxx..