목록백준 (14)
HIT해

https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net BFS를 활용해 풀이한 문제다. 연결되어있는 단지의 길이와 갯수를 출력한다. const filePath = process.platform === 'linux' ? '/dev/stdin' : 'input.txt'; const [n,...input] = require("fs") .readFileSync(filePath) .toString() .trim().split('\n'); const N = Num..

https://www.acmicpc.net/status?user_id=smyang0220&problem_id=2573&from_mine=1 채점 현황 www.acmicpc.net 11월 04일 토요일 황금같은 주말에 생각보다 많은 시간을 투자한 문제다... 1시간 30분정도 푼 것 같다. 틀렸던 원인 1. 빙산 수를 감소시키는 것을 같은 배열안에서 진행을 해서 다른 빙산의 수 감소에 영향을 줌 => 복사배열을 준비 2. 한번에 다 녹았을 때 0 출력 문제를 똑바로 읽지 않아서 해맸던 것 같다. 앞으로 문제를 정독하자.. 이 문제는 BFS를 사용해서 해결해야하는 문제다. 처음 배열을 입력 받을 때 0보다 큰 값들을 확인해 빙산 수를 확인하고 제거 하는 함수에서 제거된 빙산이 0보다 작아지면 전체 빙산수를 ..

https://www.acmicpc.net/problem/4485 4485번: 녹색 옷 입은 애가 젤다지? 젤다의 전설 게임에서 화폐의 단위는 루피(rupee)다. 그런데 간혹 '도둑루피'라 불리는 검정색 루피도 존재하는데, 이걸 획득하면 오히려 소지한 루피가 감소하게 된다! 젤다의 전설 시리즈의 주 www.acmicpc.net 다익스트라를 이용한 풀이다. 준비물 1. ArrayList를 담을 2차원 배열 : 인접 리스트 2. 위치값과 가중치를 저장할 : Node 클래스 3. 거리들을 저장할 2차원 거리 배열 : distance[][] 다익스트라 알고리즘은 처음 시작한 점과 끝점이 정해져있을 때 사용하면 좋은 알고리즘이다. 함수도 시작지점과 종료지점을 안다는 가정하에 작성하였다. 코드 import jav..
https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net 우선순위큐에 대한 이해와 그리디 알고리즘을 합친 방식이다. import java.util.PriorityQueue; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); PriorityQueue queue = new ..

https://www.acmicpc.net/problem/1774 1774번: 우주신과의 교감(1,1) (3,1) (2,3) (4,3) 이렇게 우주신들과 황선자씨의 좌표가 주어졌고 1번하고 4번이 연결되어 있다. 그렇다면 1번하고 2번을 잇는 통로를 만들고 3번하고 4번을 잇는 통로를 만들면 신들과 선자씨끼www.acmicpc.net 아직 연결되지 않은 간선을 찾아서 그중 가장 가까운 것을 찾아서 연결하면 해결이 된다 생각하였고 아래와 같은 코드를 작성했다. import java.util.Scanner; public class B1774 { static class Node{ int x, y; public Node(int x, int y) { super(); this.x = x; this.y = y; } ..

https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net package B7576; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; ..