FickleBoBo

[BaekJoon] 6549번 - 히스토그램에서 가장 큰 직사각형 [Java][C++]

문제 링크 1. 문제 풀이 주어진 히스토그램에서 가장 큰 직사각형의 넓이를 구하는 문제로 단조 스택을 활용해서 해결할 수 있다. 아래는 예제 그림의 히스토그램이다. 히스토그램의 첫 번째 막대부터 순서대로 탐색을 진행한다. 먼저 첫 번째 막대의 경우 기준이 될 다른 막대가 없다. 두 번째 막대의 경우 첫 번째 막대보다 ...

[BaekJoon] 33702번 - 비밀번호 [Java][C++]

문제 링크 1. 문제 풀이 시작 번호가 주어졌을 때 만들 수 있는 서로 다른 비밀번호의 개수를 구하는 문제로 DFS를 활용해서 해결할 수도 있지만 버튼이 3 by 3 크기라는 점에서 관찰을 통해서도 해결할 수 있다. 먼저 대칭성이 있으므로 코너 쪽에서 시작하는 경우, 코너 사이의 변에서 시작하는 경우, 중앙에서 시작하는 경우만 구하면 되며 ...

[BaekJoon] 5446번 - 용량 부족 [Java][C++]

문제 링크 1. 문제 풀이 지워야 하는 파일들과 지우면 안 되는 파일들이 주어졌을 때 최소한의 삭제 명령으로 지워야 하는 파일들을 모두 지워야 하는 문제다. 트라이 자료구조를 활용하면 해결할 수 있는데 먼저 지워야 하는 파일들로 트라이를 만들어준다. 이때 생성 과정에서 방문한 모든 각 노드에 매번 +1을 해줘서 각 노드가 자신까지를 접두어로...