프로그래머스 난이도 1 문제 풀이
정수 배열 arr과 deletelist가 있습니다. arr의 원소 중 deletelist의 원소를 모두 삭제하고 남은 원소들은 기존의 arr에 있던 순서를 유지한 배열을 return 하는 solution 함수를 작성해 주세요. 블로그 기록 이유 보통 자바 문제를 풀
문자열 mystring과 정수 배열 indices가 주어질 때, mystring에서 indices의 원소에 해당하는 인덱스의 글자를 지우고 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요. 블로그 기록 이유 Level 0 문제 중에 가장 오래 헤매었다. 실패와 오류 분석 단순 값 제거 처음에는 단순하게 indices에 있는 배...
임의의 문자열이 주어졌을 때 문자 "a", "b", "c"를 구분자로 사용해 문자열을 나누고자 합니다. 예를 들어 주어진 문자열이 "baconlettucetomato"라면 나눠진 문자열 목록은 ["onlettu", "etom", "to"] 가 됩니다. 문자열 myStr
문자열 mystring과 정수 s, e가 매개변수로 주어질 때, mystring에서 인덱스 s부터 인덱스 e까지를 뒤집은 문자열을 return 하는 solution 함수를 작성해 주세요. 기록의 이유 자바의 문자열은 변경할 수 없다. my_string.replaceA
각 직원이 적은 메뉴가 문자열 배열 order로 주어질 때, 카페에서 결제하게 될 금액을 return 하는 solution 함수를 작성해주세요. order의 원소는 아래의 것들만 들어오고, 각각의 의미는 다음과 같습니다. 풀이 주석으로 쭉 적어놓고 문제 풀이를 시작했
문자열 mystr과 n이 매개변수로 주어질 때, mystr을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요. 기록 이유 단순한 문제인 줄 알았는데 생각보다 문제를 푸는데 오래 걸렸다.. 약 30분 정도 소요된 것 같다. 솔직히
숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 so
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요. 고민한 부분 최근에는 바로
정수 n을 기준으로 n과 가까운 수부터 정렬하려고 합니다. 이때 n으로부터의 거리가 같다면 더 큰 수를 앞에 오도록 배치합니다. 정수가 담긴 배열 numlist와 정수 n이 주어질 때 numlist의 원소를 n으로부터 가까운 순서대로 정렬한 배열을 return하도록 s
한 개 이상의 항의 합으로 이루어진 식을 다항식이라고 합니다. 다항식을 계산할 때는 동류항끼리 계산해 정리합니다. 덧셈으로 이루어진 다항식 polynomial이 매개변수로 주어질 때, 동류항끼리 더한 결괏값을 문자열로 return 하도록 solution 함수를 완성해보세요. 같은 식이라면 가장 짧은 수식을 return 합니다. 🕐 풀이 시간 : 45분 ...
점 네 개의 좌표를 담은 이차원 배열 dots가 다음과 같이 매개변수로 주어집니다. [[x1, y1], [x2, y2], [x3, y3], [x4, y4]] 주어진 네 개의 점을 두 개씩 이었을 때, 두 직선이 평행이 되는 경우가 있으면 1을 없으면 0을 return
지뢰가 있는 지역과 지뢰에 인접한 위, 아래, 좌, 우 대각선 칸을 모두 위험지역으로 분류합니다.지뢰는 2차원 배열 board에 1로 표시되어 있고 board에는 지뢰가 매설 된 지역 1과, 지뢰가 없는 지역 0만 존재합니다.지뢰가 매설된 지
🕐 풀이 시간 : 30분 🌄시행착오 예전에 백준 문제를 풀면서는 항상 시간, 메모리 제한이 있었는데, 최근에는 프로그래머스만 풀면서 그 제약에 대한 부분에 크게 집중하지 않았다. 그렇기에 쉽고 비효율적인 코드를 사용해서 코딩을 했고 당연히 틀렸다. 💡아이디어
🕐 풀이 시간 : 30분 🌄시행착오 문제를 너무 쉽게 해결하려고했다.. 실패코드대로 실행을 해버리면 끊어서 적당히 할 수 있는 상황에도 그대로 쭈욱 페인트칠을 해버린다. 즉 페인트를 낭비하게된다. 💡아이디어 한 번 칠하게 되면 그 범위에 있는 목표들을 지워주고 싶었다. 그렇기에 리스트에 넣어두고 지워나가는 형식으로 진행하였다. 이해가 안되는 부분...
🕐 풀이 시간 : 30분 🌄시행착오 (점수)(마크) 같은 문제에서 내가 너무 크게 간과한 부분이있었다. 보통 이런 경우에는 char형으로 뽑아서 그게 숫자 부분이면 숫자로 판단하고 마크와 조합을 했는데.. 만약 점수가 10점 이상이라면? 그럼 숫자를 1,0 이렇
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 🕐 풀이 시간 : ...
문제 설명 문제 설명 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝
풀이시간 : 25분 처음에 문제를 풀려고 할 때 그림에 조금 집중하다가 아예 수학적으로 풀어보자는 생각을 했다. 이 부분에서 뭔가 규칙 같은 게 보였기 때문이다. 일단 브라운+노랑 = 가로*세로가 보였고, 직접 그림을 그려보니 안에 들어가는 노랑은 (가로-2)(세
첫 시도 일단 이 문제를 봤을 때 백준의 숨바꼭질 문제와 흡사한 느낌을 받았고 문제 해결을 위해 그림을 그렸을 때도 비슷하게 나왔다 하지만 문제에 나와 있는 조건을 보았을 때 10억까지도 나올 수 있는 상황에서 BFS를 사용해서는 효율이 좋게 나오기가 어려울 것 같
짧지만 생각을 해내기 어려웠던
롤케이크 자르기와 해시맵,해시셋
블로그를 정리하면서 다시 되돌아보다가 해결할 수 있었던 문제!
다리를 지나는 트럭
오래 풀었지만 스스로 풀어서 뿌듯한 문제
🔍 어떻게 해결하지? 첫번째 방법 가장 먼저 떠오른 방법은 앞에 가장 큰 수가 와야하기 때문에 1의 자리, 10의 자리, 100의 자리별로 분류하고 내림차순 정렬을 한 후에숫자들을 조합하려고 했는데 이렇게 하면 9 95 999 이렇게 나올 때 뭘 먼저해야할지 판단이
🔍 어떻게 해결하지? 첫번째 방법 가장 먼저 떠오른 방법은 앞에 가장 큰 수가 와야하기 때문에 1의 자리, 10의 자리, 100의 자리별로 분류하고 내림차순 정렬을 한 후에숫자들을 조합하려고 했는데 이렇게 하면 9 95 999 이렇게 나올 때 뭘 먼저해야할지 판단이
🤷♂️ 유클리드 호제법? 기본적인 알고리즘 문제들을 풀 때 최소공배수나 최대공약수를 구하라는 문제들이 나온다. 이 때 일반적으로 가장 쉽게 풀 수 있는 방법이 유클리드 호제법이다! 📌 최대공약수 유클리드 호제법을 통해서 최대공약수를 쉽게 구해낼 수 있다! 이
map에서 값 기준의 정렬을 어떻게 할 지에 대해서..