프로그래머스(8)
-
[데브코스 백엔드 1기] 회고
반 년간의 데브코스를 마쳤다데브코스를 시작할 때, 나는 내가 경험해보지 못한 것이 나의 부족함이라고 정의했고, 그것을 채우는 것을 목표로 삼았다. 그러나 내가 이해했다고 여겼던 것들을 다시 되짚는 과정에서 오히려 더 깊은 통찰을 얻었다. 단순히 유행하는 기술을 익히는 데 그치지 않고, 스스로를 객관적으로 바라보며 부족한 점을 채워나가는 과정에서 진정한 성장이 이루어진다는 것을.특히 가장 큰 변화는 단순히 구현하는 것에 머물지 않고, '왜 이렇게 해야 하는가'라는 질문을 끊임없이 던지게 되었다는 점이다. 이 관점은 코드 레벨에 그치지 않고, 비즈니스와 도메인 관련 기획까지 확장되었다. 기술적 결정이 비즈니스 요구사항과 도메인의 특성을 어떻게 반영해야 하는지 고민하게 되었다는 점에서, 단순히 개발을 넘어 더..
2024.12.17 -
[프로그래머스 JAVA] 순위
https://school.programmers.co.kr/learn/courses/30/lessons/49191 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 접근 방법 위상 정렬위상 정렬로 열내면서 풀어봤지만 문제를 풀수록 미궁 속으로 빠졌다. 위상 정렬로 풀이하면 처음과 끝에 있는 선수들의 순위는 비교적 쉽게 정할 수 있지만, 중간에 있는 선수들의 순위는 모호하고, 접근하기 까다로워진다. 문제를 풀면서 이상하다고 생각해서 찾아보니 위상 정렬은 순서가 명확히 정해진 상황에서 사용하는 게 올바르다고 한다.(순서가 명확, 사이클X -> 위상 정렬) 플..
2024.10.13 -
[프로그래머스 JAVA] 수식 복원하기
https://school.programmers.co.kr/learn/courses/30/lessons/340210 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 접근 방법 특별히 떠오르는 알고리즘은 없었다. 문제에서 제시한 힌트와 비슷한 방식으로도 풀이해봤고, 조금 더 최적화해서 진행해보기도 했지만 실행결과는 비슷해서 아쉬웠다. 풀이 방법 (2가지) 1. 문제 설명대로 풀어본 코드 문제에서 제시한 힌트는 아래와 같다. 가능한 STRAT진수 ~ END진수 를 체크해보고, 그 결과들이 다르다면 ?를 출력하고 결과가 같다면 풀이 가능한 문제로 표현하는..
2024.09.19 -
[프로그래머스 JAVA] 주사위 고르기
https://school.programmers.co.kr/learn/courses/30/lessons/258709 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 접근 방법주사위 조합을 구한다. (n개의 주사위를 n/2개로 나눈다.)주사위 조합에서 나올 수 있는 합의 경우를 구한다. (각 주사위의 눈금을 사용)2개의 조합을 비교해서 승리 횟수를 센다. 풀이 방법 (3가지)모든 조합을 백트래킹으로 하나씩 비교해서 승리 횟수를 누적완전탐색시간초과코드더보기public class Solution { static int length; static i..
2024.09.14 -
[프로그래머스 JAVA] 이중우선순위큐
[프로그래머스] 이중우선순위큐 : https://school.programmers.co.kr/learn/courses/30/lessons/42628 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 조건 정리입력 / 출력문제를 풀기 전 deque(덱) 구조보다 최소힙, 최대힙으로 우선순위큐(pq)를 2개 구현해야겠다. 한 개의 pq에서 삭제(dequeue)가 일어나면, 나머지 pq에서도 삭제가 일어나야 하는데 어떻게 구현하지?나머지 pq에서 remove 연산 -> remove 를 위한 힙 탐색 -> 탐색 트리가 아니므로 O(logN) 이 아닌 O(N) 만큼 ..
2024.05.13 -
[프로그래머스 JAVA] 모음사전
[프로그래머스] 모음사전 : https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 조건 정리입력 / 출력 문제를 풀기 전 완전탐색 문제지만 규칙을 찾을 수 있다고 생각함.각 자릿수에는 NULL, "A", "E", "I", "O", "U" 가 들어갈 수 있음 -> 6진수와 비슷하게 취급하고 싶음입력값을 "AAAAA" 와 비교한다면, 논리적으로 쉽게 풀이할 수 있을 것이라고 생각함.아래 표에 따라서, 입력값을 숫자로 변환한 것과 11111 을 비교하는 ..
2024.05.12