알고리즘 4

[프로그래머스][JAVA] 84021. 퍼즐조각채우기

💡 문제퍼즐조각채우기(https://school.programmers.co.kr/learn/courses/30/lessons/84021)자세한 문제 설명과 입출력 예는 링크를 참고해주세요. 📝 선행 개념🤓 문제 풀이문제 설명주어진 문제는 게임 보드의 빈 공간에 테이블 위의 퍼즐 조각을 적절히 놓아서 최대한 많은 칸을 채우는 것입니다. 퍼즐 조각을 회전시킬 수는 있지만 뒤집을 수는 없습니다. 각 퍼즐 조각은 인접한 칸이 비어있으면 안 됩니다.문제 접근 방법퍼즐 조각 추출:BFS를 사용하여 테이블에서 퍼즐 조각을 추출합니다.퍼즐 조각을 추출할 때, 모든 가능한 회전을 고려하여 저장합니다.빈 공간 추출:BFS를 사용하여 게임 보드에서 빈 공간을 추출합니다.퍼즐 조각 맞추기:각 빈 공간에 대해 모든 퍼즐 ..

[프로그래머스][JAVA] 86971. 전력망을 둘로 나누기

💡 문제전력망을 둘로 나누기 (https://school.programmers.co.kr/learn/courses/30/lessons/86971)자세한 문제 설명과 입출력 예는 링크를 참고해주세요. 📝 선행 개념🤓 문제 풀이주어진 문제는 송전탑 네트워크에서 하나의 전선을 끊어 두 개의 전력망으로 나누었을 때, 각 전력망이 가지고 있는 송전탑 개수의 차이를 최소화하는 것입니다. 이를 위해, 각 전선을 하나씩 끊어보고, 끊어진 두 개의 전력망의 송전탑 개수를 계산한 후, 차이를 비교하여 최소값을 찾아야한다.송전탑의 개수가 최대한 비슷하도록 두 전력망으로 나누는 것입니다. 이는 그래프에서 하나의 엣지를 끊고 연결된 두 컴포넌트의 크기를 계산하는 문제로 접근할 수 있습니다. 입출력 예 1)- 4번과 7번을..

[백준][JAVA] 비슷한 단어

💡 문제 비슷한 단어 (https://www.acmicpc.net/problem/2179)자세한 문제 설명과 입출력 예는 링크를 참고해주세요.📝 선행 개념주어진 문제를 해결하기 위해 다양한 자료 구조와 알고리즘을 사용할 수 있다.해당 문제에서는 해시맵(HashMap)과 배열을 사용하여 문제를 해결하였으며 아래는 해당 문제를 해결하는 데 사용된 자료 구조와 알고리즘에 대한 설명입니다. 자료 구조해시맵 (HashMap): 단어를 키로, 해당 단어의 입력 순서를 값으로 저장합니다. 이를 통해 단어의 입력 순서를 기억할 수 있습니다.배열 : 입력된 단어들을 저장합니다. 이를 통해 단어 쌍을 비교할 수 있습니다.알고리즘문자열 비교:각 단어 쌍에 대해 최대 접두사 길이를 계산합니다.이중 반복문 (Nested L..

[이지스퍼블리싱] Do it! 알고리즘 코딩테스트 자바편

[Do it! 알고리즘 코딩 테스트 - 자바 편] 코딩 테스트를 볼 때 평소에 문제를 풀어본 경험이 있어도 막상 실전에서 콱.. 막히는 경험이 있었다. 그래서 최근 다시 알고리즘 스터디를 통해서 알고리즘 문제를 풀고는 있었지만 기본기가 부족한 상태에서 꾸역꾸역 문제를 풀다 보니 뭔가... 쉬운 문제만 풀게 되는 것과.. 구글 검색을 통해서 막히는 문제를 해결하니 온전한 내 실력이 아닌 것 같았다. 사실 기존에 [Do it! 자료구조와 함께 배우는 알고리즘 입문 자바 편] 책으로 기본 개념에 대해서 또 자료구조에 대해서 많이 얻고 알게 되었어서 찾아봤지만..ㅠㅠ 좋아하는 이지스퍼블리싱에서 자바 편 알고리즘 책이 더 없어서 아쉬웠었는데..! 이번에 Do it! 알고리즘 코딩 테스트 자바 편으로 새로운~ 책을..

도서/알고리즘 2022.04.15