[백준] 23971 ZOAC4 java
·
Coding Test/Baekjoon
https://www.acmicpc.net/problem/23971문제 이해문제는 이해하기 어렵지 않았습니다. 처음 주어지는 H, W에 사람들이 앉을 수 있는 강의실 크기를 지정하고, 사람들이 앉을 수 있는 틈을 각각 N, M으로 주어졌습니다. 잠깐 생각해보니 간단한 계산을 통해 문제를 해결할 수 있었습니다.풀이 코드public class Main_BJ_23971_B3_ZOAC4 { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readL..
[백준] 2933 미네랄 java
·
Coding Test/Baekjoon
https://www.acmicpc.net/problem/2933 문제 이해문제 설명은 다음과 같습니다. 간단하게 정리해 보겠습니다. 1. '.'과 'x'로 이루어진 map을 줍니다.2. N 횟수만큼 막대를 좌, 우에서 한 번씩 던져 x를 제거합니다.3. x가 제거될 때, 상하좌우에 인접한 미네랄이 끊어질 경우, 중력이 작용하여 미네랄 덩어리는 바닥으로 떨어집니다.4. 막대를 모두 던진 후 map의 모습을 출력합니다. 다음은 문제에 접근한 방법을 서술해 보겠습니다. 처음에는 잘못된 방법으로 문제를 풀고 있었으며, 다행히 이를 바로잡기 쉽게 문제를 접근하고 있었습니다. 덕분에 문제점을 발견하고 빠르게 정정하여 문제를 풀어낼 수 있었습니다. 첫 번째 풀이1. 먼저 미네랄의 개수를 모두 세주었습니다.2. 이후..
[백준] 11559 Puyo Puyo (java)
·
Coding Test/Baekjoon
https://www.acmicpc.net/problem/11559 11559번: Puyo Puyo 총 12개의 줄에 필드의 정보가 주어지며, 각 줄에는 6개의 문자가 있다. 이때 .은 빈공간이고 .이 아닌것은 각각의 색깔의 뿌요를 나타낸다. R은 빨강, G는 초록, B는 파랑, P는 보라, Y는 노랑이다. www.acmicpc.net 문제 이해 문제를 읽어보면 특별히 어렵지 않게 이해할 수 있는 문제였습니다. 중력에 의해 떨어지는 블록이 존재하고 상하좌우 같은 블록이 4개 이상 연결되어 있으면 삭제될 수 있습니다. 4개 이상 연결되어 있는 블럭의 그룹이 한 개 이상일 경우 그 블록들은 동시에 사라져야 하며 이렇게 한 번 사라지는 동작을 한 번의 연쇄라고 합니다. 또 이렇게 블록이 사라져 공중에 떠 있는..
[백준] 15591 MooTube (java)
·
Coding Test/Baekjoon
https://www.acmicpc.net/problem/15591 15591번: MooTube (Silver) 농부 존은 1번 동영상과 2번 동영상이 USADO 3을 가지고, 2번 동영상과 3번 동영상이 USADO 2를 가지고, 2번 동영상과 4번 동영상이 USADO 4를 가진다고 했다. 이것에 기반해서 1번 동영상과 3번 동영상의 www.acmicpc.net 문제 이해 문제를 꼼꼼히 읽어야겠다는 생각을 다시 한번 하게 된 문제입니다. 일단 주어진 문제의 레벨은 골드 5였기 때문에 그렇게 겁먹지 않고 접근을 했지만 결국 다른 풀이를 보고 나서야 풀어낼 수 있었던 문제입니다. 모든 지점에서의 모든 유사도를 이차원 int 배열에 표시를 해두고, Q를 통해서 주어진 위치에서 k 이상의 유사도를 세어보자라고 ..
[Java] HashMap remove, 객체, 참조
·
Study/Java
코딩테스트 공부를 하다가 문득 궁금증이 생겼습니다. 하나의 객체를 생성하여 HashMap에 다가 담아놓고, 이를 get으로 불러서 다른 자료구조 예를들어 ArrayList에다가 추가를 했을 때, HashMap에서 해당 객체를 remove 한다면 ArrayList에 있는 객체도 함께 삭제가 되지 않을까? 하는 궁금증 이었습니다. 그래서 테스트를 진행해봤습니다. 일단 테스트에 사용할 클래스를 하나 만들어 주었습니다. static class Test{ int val; public Test(int val) { this.val = val; } @Override public String toString() { final StringBuilder sb = new StringBuilder("Test{"); sb.app..
[백준] 2251 물통, 자바
·
Coding Test/Baekjoon
2251번: 물통 각각 부피가 A, B, C(1≤A, B, C≤200) 리터인 세 개의 물통이 있다. 처음에는 앞의 두 물통은 비어 있고, 세 번째 물통은 가득(C 리터) 차 있다. 이제 어떤 물통에 들어있는 물을 다른 물통으로 쏟아 부 www.acmicpc.net 문제 간단 설명 A, B, C 각각 세 개의 물통이 주어집니다. 그리고 최초에 C 물통에는 물이 가득 차있으며 이 물통의 물을 각각 다른 물통으로 옮길 수 있습니다. 다만 물을 옮길 때, 받는 대상이 가득 차던지, 주는 대상이 비워지든지 해야합니다. 이렇게 계속해서 물을 옮길 때, A 물통이 비어있을 때, C 물통에 담겨있을 수 있는 물의 양을 모두 구하는 문제입니다. 문제 풀이 저는 아무래도 물통이 세 개 뿐이다 보니, 모든 경우의 수를 확..
[백준] 15684 사다리 조작, 자바
·
Coding Test/Baekjoon
15684번: 사다리 조작 사다리 게임은 N개의 세로선과 M개의 가로선으로 이루어져 있다. 인접한 세로선 사이에는 가로선을 놓을 수 있는데, 각각의 세로선마다 가로선을 놓을 수 있는 위치의 개수는 H이고, 모든 세로선 www.acmicpc.net 문제 간단 설명 배열의 형태로 세로선과 그 세로선 사이를 있는 사다리가 몇 개 주어집니다. 그리고 사용자는 임의의 위치에 가로선을 추가 할 수 있는데 이 작업을 통해서 모든 사다리가 출발과 도착을 같은 세로선에서 하도록 만드는 문제입니다. 문제 풀이 저는 사다리의 최대 크기가 30 X 10 이라는 것과 추가할 수 있는 최대 가로선의 개수가 3개라는 것을 보고 완전 탐색을 생각했습니다. 그리하여 1~3개의 사다리를 놓았을 때의 모든 경우의 수를 구했고, 각각의 세..
[백준] 15683 감시, 자바
·
Coding Test/Baekjoon
15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감 www.acmicpc.net 문제 간단 설명 보드가 주어지고 보드 안에 벽과 카메라가 주어집니다. 카메라는 5가지 종류가 있으며 볼 수 있는 방향이 각각 다릅니다. 그리고 이 카메라는 얼마든 회전시킬 수 있습니다. 주어진 카메라들을 마음대로 회전한 뒤 가장 많은 곳을 볼 수 있는 즉 사각지대가 가장 적게 되었을 때의 사각지대의 개수를 구하는 문제입니다. 문제 풀이 카메라의 최대 개수가 8개이기 때문에 충분히 작은 수라고 판단했습니다. 그렇기에 모든 경우의 수를 확인하는 dfs를 이..
dororong
'java' 태그의 글 목록