본문 바로가기
반응형

백준34

[ 알고리즘 ] 코딩 백준 1406 - 에디터 만들기 - Double Stack -.java 백준 1406 - Editor 만들기 * 자바로 구현 * 스택을 2개 사용해야 한다고 한다. * 현재 커서를 기준으로 왼쪽과 오른쪽 두개의 스택을 운용하면 4개의 연산을 처리하는데 걸리는 시간은 매우 적다 * 알고리즘적 사고를 많이 키워야겠다!! public class Editor_Double_Stack { public static void main(String[] args) throws IOException{ Editor_Double_Stack ep = new Editor_Double_Stack(); ep.editor(); } /** 에디터 구현 부*/ private void editor() throws IOException{ BufferedReader br = new BufferedReader(new.. 2020. 9. 5.
[ 알고리즘 ] 코딩 백준 2606 - 새로운 바이러스.java 백준 2606 - 새로운 바이러스 * 자바로 구현 * 어떤 그래프가 주어진다. * 해당 정점이 바이러스가 걸린다면 ( 이 문제에서는 1번으로 고정 ) * 연결된 모든 정점이 감염된다. * 어떤 한 정점이 감염되었을 때 * 그로인해 감염되는 컴퓨터의 수를 구하라 * BFS로 구현 public class BOJ_2606_New_Virus { static int VERTEXS, EDGES, totalCnt; static int graph[][]; static boolean visited[]; public static void main(String[] args) throws Exception { // 속도 개선을 위해 BufferedReader, StringTokenizer 이용 BufferedReader br.. 2020. 9. 5.
[ 알고리즘 ] 코딩 백준 2580 - 스도쿠 채우기.java 백준 2580번 - 스도쿠 채우기 * 자바로 구현 * 주어진 행렬에서 모든 칸을 규칙에 맞게 넣은 뒤 출력하기. * 빈 칸인 경우 봐야할 것. ** 가로줄에서 자신이 들어갈 숫자 찾기 ** 세로줄​에서 자신이 들어갈 숫자 찾기 ** 자신이 있는 작은 9칸에서 들어갈 숫자 찾기 * 3가지 검사를 마치고 나온 숫자가 존재한다면 해당 숫자를 가지고 * DFS수행, BackTracking public class BOJ_2580_Sudoku { static int[][] sudoku; // 스도쿠 정보를 입력할 2차원 배열 // 스도쿠의 정보를 입력 받을 때 빈칸의 정보를 담을 리스트 static List zlist = new ArrayList(); // 스도쿠 판에서 비어있는 칸의 위치 정보를 저장하는 클래스 .. 2020. 9. 5.
[ 알고리즘 ] 코딩 백준 2887 - 행성 터널.java 백준 2887 - 행성터널 * 자바로 구현 * 행성의 위치는 x,y,z 의 좌표로 주어짐. * 행성간 터널을 뚫는데, A(x1,y1,z1) - B(x2,y2,z2)가 주어지고 * min(|x1-x2|,|y1-y2|,|z1-z2|)를 구하면 된다. * 예를들어 A(1,2,3) B(10, 2, 32) 인 경우에는 y좌표가 같으므로 비용은 0이 된다. * 행성 10만개.. 좌표값 -10^9 ~ + 10^9 * X좌표를 기준으로 정렬하고 Edge 추가 * Y좌표를 기준으로 정렬하고 Edge 추가 * Z좌표를 기준으로 정렬하고 Edge 추가 ​ * 모든 Edge를 가중치를 기준으로 오름차순 정렬 * 정렬 된 Edge에 대해서 Kruskal 적용 public class BOJ_2887_Planet_Tunnel { .. 2020. 9. 5.
반응형