오블완

문제설명입력 & 출력나의 풀이이번 "프로그래머스 - 소수 찾기" 문제는 문자열로 주어진 숫자들로 조합하여 만들 수 있는 모든 수 중에서 소수를 찾는 문제입니다. 제가 풀이한 방법은 DFS 알고리즘을 사용하여 소수를 체크해주고, 소수 판별 함수를 만들어 해당 숫자가 소수인지 확인하는 방식으로 구현했습니다. [Algorithm] 효율적인 그래프 탐색: 자바로 구현한 DFS 알아보기 (1/2)이번 포스팅에서는 Java 알고리즘에서 필수적이라고도 말할 수 있는 DFS와 BFS에 대해서 알아보겠습니다.  자바를 활용하다 보면 그래프나 트리 구조를 탐색해야 할 때가 있습니다.  예를 들어,pixx.tistory.com전체 코드 DFS 함수DFS 함수에서는 재귀를 사용하여 가능한 모든 조합을 탐색합니다. 백트래킹(B..
문제설명입력 & 출력나의 풀이이번 "프로그래머스 - 폰켓몬" 문제는 폰켓몬이 배열로 주어졌을 때 최대한 다른 종류의 폰켓몬을 가져갈 수 있는지에대한 문제입니다. Hash문제로, HashSet과 HashMap 두 개다 사용할 수 있습니다.HashSet 풀이 폰켓몬은 최대한 다양한 종류를 선택해야 하기 때문에, 중복을 제거할 수 있는 Set 자료구조를 활용할 수 있습니다. [JAVA] HashSet 클래스 사용법 (중복 없는 데이터 집합)자바를 활용하다 보면 중복되지 않는 유일한 값을 저장하고 관리해야 할 때가 있습니다.  이럴 때 사용할 수 있는 클래스가 HashSet입니다.  HashSet은 고유한 요소들을 저장하는 데 최적화된 컬렉pixx.tistory.com 문제에서 가져갈 수 있는 폰켓몬의 최대 수..
·Coding Test/백준
문제설명입력 & 출력나의 풀이이번 "백준 - 돌 게임"문제는 2명의 플레이어(상근,창영)가 돌을 1개 또는 3개 가져갈 때 마지막 돌을 가져가는 사람이 승자하는 게임입니다. 규칙을 정리하자면 다음과 같습니다.돌이 N개 있다.상근이와 창영이가 번갈아 가며 돌을 가져간다.각 턴에 1개 또는 3개를 가져갈 수 있다.마지막 돌을 가져가는 사람이 승리한다.상근이가 먼저 시작한다.이번 문제는 동적 계획법 (Dynamic Programming)알고리즘을 사용하여 풀 수 있습니다. [Algorithm] 동적 계획법(Dynamic Programming, DP, Java) 알아보기동적 계획법 DP란❓  동적 계획법은 프로그래밍 대회 문제에 가장 자주 출현하는 디자인 패러다임 중 하나로 1940년대 리처드 벨만이 사용하던 ..
·Coding Test/백준
문제설명입력 & 출력나의 풀이이번 "백준 - 막대기" 문제는 주어진 수 X를 만들기 위한 최소 막대기 개수를 구하는 문제입니다. 이 문제에서 막대기는 처음에 64의 길이를 가지고 있으며, 길이가 반으로 자를 수 있습니다.64 길이의 막대기부터 시작하여, 필요한 만큼 X에 맞게 막대기를 사용합니다.매번 X와 stick(현재 막대기 길이)을 비교하여, stick이 X보다 크다면 그 막대기를 자르지 않고 반으로 줄여 나갑니다.stick이 X보다 작거나 같을 때는 그 막대기를 사용하여 X를 차감합니다.이렇게 반복하여 X가 0이 될 때까지 막대기를 사용하고, 사용한 막대기의 개수를 출력합니다.  코드를 보기 쉽게 그림으로 표현하자면 위와 같습니다. 초기 막대 길이 64 → 너무 커서 사용X → 32로 자름32 →..