본문 바로가기

Algorithm/BOJ172

[BOJ]2493번: 탑 https://www.acmicpc.net/problem/2493 스택으로 해결할 수 있는 문제입니다. 1. 입력으로 주어지는 탑의 높이를 큐 자료구조에 저장합니다. 2. 큐에서 나오는 각 element에 대해 필요한 연산을 하고 저장을 할 스택(rest)을 만듭니다. - 스택의 의미는 현재 큐에 나오는 element가 쏘는 레이저를 송신하는 탑을 의미합니다. 3. 큐에서 하나씩 element를 뽑으면서 내 레이저를 송신할 탑을 찾습니다. -1 현재 스택의 TOP에 있는 탑의 높이가 현재 element 탑의 높이보다 높다면 => ---- 현재 element의 레이저를 송신하는 탑으로 스택의 TOP을 저장하고 현재 element를 스택에 push합니다. -2 현재 스택의 TOP에 있는 탑의 높이가 현재 e.. 2021. 6. 18.
[2020 카카오 기출] 문자열 압축(JAVA) programmers.co.kr/learn/courses/30/lessons/60057 시뮬레이션 문제입니다. 문자열 압축 계산을 위해 사용할 수 있는 자료구조는 다양합니다. 편한 방식을 사용하면 될 것 같고 저는 HashMap을 통해서 압축가능여부를 계산했습니다. 주어진 문자열을 S라고 표현하겠습니다. 1. 주어진 문자열 S를 길이 1부터 ~ S / 2 길이만큼 LEN 단위로 잘라서 압축시도를 합니다. 2. 길이 1부터 S/2 길이만큼 압축한 결과중 가장 길이가 짧은 것을 리턴하면 됩니다. 코드: github.com/cotchan/algorithm/blob/main/java/PROGRAMMERS/PG60057.java 2021. 4. 21.
[BOJ]1941번: 소문난 칠공주 www.acmicpc.net/problem/1941 시뮬레이션 문제입니다. 1. 조합을 사용하여 25개 (5x5) 좌표 중에 좌표 7개를 뽑습니다. 2. 1번에서 뽑은 좌표 7개가 정답 후보인지 확인합니다. - 이다솜파가 임도연파보다 많은지 체크 - 7칸은 전부 연결되어 있는지 체크 코드: github.com/cotchan/algorithm/blob/main/java/BOJ/BOJ1941.java 2021. 4. 14.
[BOJ]14502번: 연구소 www.acmicpc.net/problem/14502 조합을 사용해서 푸는 시뮬레이션 문제입니다. 1. 빈 칸 중에 3칸을 뽑습니다. (조합 사용) 2. 새로 뽑은 3칸을 벽으로 바꾼 뒤 BFS를 돌려서 방문하지 않은 빈 칸을 셉니다. 3. 모든 조합 경우의 수에 대해 2번 값이 최대인 값이 정답입니다. 코드: github.com/cotchan/algorithm/blob/main/java/BOJ/BOJ14502.java 2021. 4. 9.