백준 골드5
[백준, BOJ 5549] 행성 탐사 (java)
https://www.acmicpc.net/problem/5549 5549번: 행성 탐사 상근이는 우주선을 타고 인간이 거주할 수 있는 행성을 찾고 있다. 마침내, 전 세계 최초로 인간이 거주할 수 있는 행성을 찾았다. 이 행성은 정글, 바다, 얼음이 뒤얽힌 행성이다. 상근이는 이 www.acmicpc.net 메모리: 103,608 KB , 시간: 1,116 ms 사용 알고리즘: 누적 합 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws Exception{ Buf..
[백준, BOJ 17396] 백도 (java)
https://www.acmicpc.net/problem/17396 17396번: 백도어 첫 번째 줄에 분기점의 수와 분기점들을 잇는 길의 수를 의미하는 두 자연수 N과 M이 공백으로 구분되어 주어진다.(1 ≤ N ≤ 100,000, 1 ≤ M ≤ 300,000) 두 번째 줄에 각 분기점이 적의 시야에 보이는 www.acmicpc.net 메모리: 134,104 KB , 시간: 992 ms 사용 알고리즘: 데이크스트라, 그래프 이론, 최단 경로 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.PriorityQueue..
[백준, BOJ 18114] 블랙 프라이데이 (java)
https://www.acmicpc.net/problem/18114 18114번: 블랙 프라이데이 첫 번째 줄에 물건의 개수 N과 제시하는 무게 C가 공백으로 구분되어 주어진다. (1 ≤ N ≤ 5,000, 1 ≤ C ≤ 108, N과 C는 양의 정수) 다음 줄에는 N개의 물건 각각의 무게 w가 공백으로 구분되어 주어진 www.acmicpc.net 메모리: 113,008 KB , 시간: 276 ms 사용 알고리즘: 브루트포스 알고리즘 내 생각 수의 중복이 없고 메모리 제한이 넉넉해서 boolean 배열을 만들어 인덱스에 해당하는 값이 있는지 체크해두고 2중 for문으로 해결했다. import java.io.BufferedReader; import java.io.InputStreamReader; impor..
[백준, BOJ 1916] 최소비용 구하기 (java)
https://www.acmicpc.net/problem/1916 1916번: 최소비용 구하기 첫째 줄에 도시의 개수 N(1 ≤ N ≤ 1,000)이 주어지고 둘째 줄에는 버스의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 그리고 셋째 줄부터 M+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 www.acmicpc.net 메모리: 51,460 KB , 시간: 460 ms 사용 알고리즘: 데이크스트라, 그래프 이론, 최단 경로 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.PriorityQu..
[백준, BOJ 14567] 선수과목 (Prerequisite) (java)
https://www.acmicpc.net/problem/14567 14567번: 선수과목 (Prerequisite) 3개의 과목이 있고, 2번 과목을 이수하기 위해서는 1번 과목을 이수해야 하고, 3번 과목을 이수하기 위해서는 2번 과목을 이수해야 한다. www.acmicpc.net 메모리: 126,016 KB , 시간: 580 ms 사용 알고리즘: 방향 비순환 그래프, 다이나믹 프로그래밍, 그래프 이론, 위상 정렬 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; public class Main { static int N; static ArrayList preSubject; static int[] p..
[백준, BOJ 10713] 기차 여행 (java)
https://www.acmicpc.net/problem/10713 10713번: 기차 여행 JOI나라에는 N개의 도시가 있고, 각 도시에 1,2,...,N까지의 번호를 갖고 있다. 그리고, 철도가 N-1개 있고, 각 철도에 1,2,...N-1의 번호를 갖고 있다. 철도 i (1 ≦ i ≦ N − 1)는 도시 i과 도시 i+1을 양방 www.acmicpc.net 메모리: 55,748 KB , 시간: 548 ms 사용 알고리즘: 누적 합 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] ..
[백준, BOJ 10427] 빚 (java)
https://www.acmicpc.net/problem/10427 10427번: 빚 각각의 줄에 대해 S(1) + … + S(N) 을 구한다. 중간 과정 및 답은 int 범위를 초과할 수 있으므로, 64bit 정수형(long long: C/C++, long: Java) 를 이용해야 한다. 입출력은 C/C++: printf("%lld\n",answer); Java : System. www.acmicpc.net 메모리: 15,580 KB , 시간: 228 ms 사용 알고리즘: 그리디 알고리즘, 누적 합, 정렬 내 생각 이 문제 설명이 좀... 이해가 잘 안되게 써둔 느낌...! 그래서 위의 설명은 안보고 공식만 봤다. 배열에서 M개를 선택했을 때, 선택한 M개 중 가장 큰 수를 a라고 한다면 a * M -..
[백준, BOJ 19951] 태상이의 훈련소 생활 (java)
https://www.acmicpc.net/problem/19951 19951번: 태상이의 훈련소 생활 2020년 5월 14일 논산훈련소에 입대한 태상이는 첫 총기 훈련에서 가스 조절기를 잃어버리는 중대한 실수를 범했다. 그로 인해, 태상이는 조교들에게 눈총을 받게 되었다. 조교들은 태상이에게 연 www.acmicpc.net 메모리: 79,104 KB , 시간: 1,172 ms 사용 알고리즘: 투 포인터 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.StringTokenizer; public class ..
[백준, BOJ 1240] 노드사이의 거리 (java)
https://www.acmicpc.net/problem/1240 1240번: 노드사이의 거리 첫째 줄에 노드의 개수 $N$과 거리를 알고 싶은 노드 쌍의 개수 $M$이 입력되고 다음 $N-1$개의 줄에 트리 상에 연결된 두 점과 거리를 입력받는다. 그 다음 줄에는 거리를 알고 싶은 $M$개의 노드 쌍 www.acmicpc.net 메모리: 51,152 KB , 시간: 388 ms 사용 알고리즘: 너비 우선 탐색, 그래프 이론, 그래프 탐색, 트리 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; ..