smooth waters run deep

이분탐색 6

1764_듣보잡 (JAVA)

1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamRead..

1d-1c/BOJ 2020.11.19

2869_달팽이는 올라가고 싶다 (JAVA)

2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int day = sc.nextInt(); int night = sc.nextInt(); int h = sc.nextInt(); //무엇을 찾을 것인가? 며칠 걸리는지(걸리는 일수) int left = 0; //최소 범위? 1일 int right = h; //최대 범위? h+1일 int mid = 0;..

1d-1c/BOJ 2020.10.18

10815_숫자 카드 (JAVA)

10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net import java.util.Scanner; import java.util.Arrays; public class Main { static int N; static int[] num; public static void main(String[] args) { Scanner sc = new Scanner(System.in); N = sc.nextInt(); num = new int[N]; for(int i=0; i

1d-1c/BOJ 2020.09.18

2805_나무 자르기 (JAVA) (C++)

2805번: 나무 자르기 첫째 줄에 나무의 수 N과 상근이가 집으로 가져가려고 하는 나무의 길이 M이 주어진다. (1 ≤ N ≤ 1,000,000, 1 ≤ M ≤ 2,000,000,000) 둘째 줄에는 나무의 높이가 주어진다. 나무의 높이의 합은 항상 M을 www.acmicpc.net [C++] #include #include //sort using namespace std; int n, minlength; int namu[1000001]; long long cal(int length){ //집에 가져가는 나무의 높이 계산 long long result = 0; for(int i=0; ilength) result += namu[i]-length; } return result; } int main(){ s..

1d-1c/BOJ 2020.09.18

2343_기타 레슨 (JAVA)

2343번: 기타 레슨 강토는 자신의 기타 레슨 동영상을 블루레이로 만들어 판매하려고 한다. 블루레이에는 총 N개의 레슨이 들어가는데, 블루레이를 녹화할 때, 레슨의 순서가 바뀌면 안 된다. 순서가 뒤바뀌는 경 www.acmicpc.net import java.util.Scanner; public class Main { static int N, M; static int[] lesson; public static void main(String[] args) { Scanner sc = new Scanner(System.in); N = sc.nextInt(); M = sc.nextInt(); lesson = new int[N]; int total = 0; int max1 = 0; for(int i=0; i M..

1d-1c/BOJ 2020.09.15