백준 골드1

    [백준, BOJ 20119] 클레어와 물약 (java)

    https://www.acmicpc.net/problem/20119메모리: 148,628 KB , 시간: 1,356 ms사용 알고리즘: 방향 비순환 그래프, 그래프 이론, 그래프 탐색, 위상 정렬기존의 위상 정렬은앞서 실행되어야 하는 노드들의 목록이 하나였는데,이 문제에서는 하나의 물약을 만들 수 있는 레시피들이 여러 개가 있을 수 있다.이를 고려해주어야 해서 좀 까다로운 문제인 것 같다.import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.*;public class Main { public static void main(String[] args) throws Exception{ BufferedRe..

    [백준, BOJ 1799] 비숍 (java)

    https://www.acmicpc.net/problem/1799메모리: 15,996 KB , 시간: 192 ms사용 알고리즘: 백트래킹일단 이 문제에서 내가 생각해 낸 아이디어는,체스판에서 왼쪽 위 -> 오른쪽 아래로 내려오는 라인들을 그었을 때, 각 라인 위에 위치한 비숍들은 다른 라인에 영향을 줄 수 없다.마찬가지로 오른쪽 위부터 왼쪽 아래로 내려오는 라인들을 그었을 때, 각 라인 위에 위치한 비숍들은 다른 라인에 영향을 줄 수 없다. 이 아이디어를 가지고 오른쪽 위 -> 왼쪽 아래로 내려오는 라인들을 해당 라인에서 비숍을 하나 고르고 다른 라인에서 비숍을 고르러 가는 방법으로 백트래킹 했다.(비숍을 하나 골랐을 때, 왼쪽 위 -> 오른쪽 아래 라인에 이미 비숍이 있으면 놓을 수 없다.)그런데 이 ..

    [백준, BOJ 1561] 놀이 공원 (java)

    https://www.acmicpc.net/problem/1561메모리: 15,288 KB , 시간: 168 ms사용 알고리즘: 이분 탐색, 매개 변수 탐색import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; st = new StringToken..

    [백준, BOJ 3665] 최종 순위 (java)

    https://www.acmicpc.net/problem/3665 3665번: 최종 순위 올해 ACM-ICPC 대전 인터넷 예선에는 총 n개의 팀이 참가했다. 팀은 1번부터 n번까지 번호가 매겨져 있다. 놀랍게도 올해 참가하는 팀은 작년에 참가했던 팀과 동일하다. 올해는 인터넷 예선 본부에 www.acmicpc.net 메모리: 36,928 KB , 시간: 424 ms 사용 알고리즘: 방향 비순환 그래프, 그래프 이론, 위상 정렬 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; import java.util.HashMap; import java.util.Map; import java.util.S..

    [백준, BOJ 1944] 복제 로봇 (java)

    https://www.acmicpc.net/problem/1944 1944번: 복제 로봇 첫째 줄에 미로의 크기 N(4 ≤ N ≤ 50)과 열쇠의 개수 M(1 ≤ M ≤ 250) 이 공백을 사이에 두고 주어진다. 그리고 둘째 줄부터 N+1째 줄까지 미로의 정보가 주어진다. 미로는 1과 0, 그리고 S와 K로 주어 www.acmicpc.net 메모리: 54,700 KB , 시간: 376 ms 사용 알고리즘: 너비 우선 탐색, 그래프 이론, 그래프 탐색, 최소 스패닝 트리 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; public class Main { static int N, M; static char..

    [백준, BOJ 1300] K번째 수 (java)

    https://www.acmicpc.net/problem/1300 1300번: K번째 수 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오름차순 정렬했을 때, B[k]를 구해보자. 배열 A와 B www.acmicpc.net 메모리: 14,588 KB , 시간: 180 ms 사용 알고리즘: 이분 탐색, 매개 변수 탐색 import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws Exception{ BufferedRea..

    [백준, BOJ 20543] 폭탄 던지는 태영이 (java)

    https://www.acmicpc.net/problem/20543 20543번: 폭탄 던지는 태영이 시험을 망친 태영이가 인하대학교에 폭탄을 던진다! 인하대학교는 N×N 크기의 정사각형 모양의 땅이다. 인하대학교의 모든 땅은 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c) www.acmicpc.net 메모리: 376,240 KB , 시간: 1580 ms 사용 알고리즘: 누적 합, 그리디 알고리즘 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) thro..

    [백준, BOJ 16890] 창업 (java)

    https://www.acmicpc.net/problem/16890 16890번: 창업 입력은 길이가 N(1 ≤ N ≤ 300,000)인 문자열 두 개로 이루어져 있다. 모든 문자열은 알파벳 소문자로만 이루어져 있다. 첫 번째 줄에 주어지는 문자열은 구사과가 고른 문자이고, 두 번째 줄에 주 www.acmicpc.net 메모리: 23,320 KB , 시간: 324 ms 사용 알고리즘: 그리디 알고리즘, 정렬, 문자열 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; public class Main { public static void main(String[] args) throws Excepti..

    [백준, BOJ 27653] 최소 트리 분할 (java)

    https://www.acmicpc.net/problem/27653 27653번: 최소 트리 분할 정점이 $N$개인 트리가 주어진다. 정점에는 $1$부터 $N$까지 번호가 붙어있다. 각 정점에는 가중치가 존재하는데, 초기에 모든 가중치는 $0$이다. 당신은 다음 연산을 트리에 반복하여 $1$ 이상 $N$ www.acmicpc.net 메모리: 69,668 KB , 시간: 732 ms 사용 알고리즘: 넓이 우선 탐색, 그래프 이론, 그래프 탐색 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; imp..