Lv2(51)
-
[Programmers] Lv2. 모음 사전 | C++
🔗문제 보러가기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 👨💻풀이 과정 백트래킹(Backtracking)을 이용해 사전 순서대로 단어를 조합하는 방식으로 풀었습니다. 1)알파벳을 하나씩 붙이고 떼는 과정에서 인덱스 번호를 증가시키고, 2)원하는 단어를 찾으면 탐색을 중지하도록 구현하였습니다. 재귀(Recursion)와 백트래킹(Backtracking) 개념이 처음에는 익숙하지 않아, 코드로 구현하기 어려웠는데 점점 연습하다 보니 익숙해 지는 것 같습니다. ✏️소스 코드 및 결과 #include #include using namespace std; ..
2023.06.04 -
[Programmers] Lv2. 호텔 대실
🔗문제 보러가기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 👨💻풀이 과정 주어진 문자열 [대실 시작 시각, 대실 종료 시각]을 분(minute)으로 환산하여 정수로 저장 ex) ["14:30", "15:30"] \(\rightarrow\) [870, 930] 저장한 예약 시간들을 오름차순으로 정렬 예약 시간들을 순회 시작 현재 사용 중인 방들을 순회하여, 해당 방의 마지막 대실 이용 시간과 비교 해당 방에 예약 추가가 가능하면 추가 후, 오름차순 정렬 예약 추가가 불가능하면 새로운 방을 추가하여 삽입 순회를 모두 돌았다면, 방 크기 리턴 ✏️소스 코..
2023.06.03 -
[Programmers] Lv2. 미로 탈출 | C++
🔗문제 보러가기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 👨💻풀이 과정 처음엔 DFS로 접근했지만 시간 초과가 떴습니다. 시간을 줄이기 위해 목표(레버 혹은 출구) 지점 방향으로 이동하게끔 알고리즘을 다시 짰지만, 가는 길목이 막혀서 다른 길로 돌아가야 할 때 방향이 달라져 DFS 탐색이 끝나버리는 문제가 발생했었습니다. 고민을 많이 해봤지만 답이 보이지 않아 해당 전략은 포기하고, BFS로 갈아타서 풀게 되었습니다. BFS로 푼 적이 별로 없어 코드 작성하는 게 조금 어색했는데, 이 참에 한 번 연습해 봐야겠습니다. ✏️소스 코드 및 결과 #in..
2023.06.03