smooth waters run deep

백준 87

10250_ACM 호텔 (JAVA)

10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int i=0; i

1d-1c/BOJ 2020.10.18

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

2839_설탕 배달 (JAVA)

2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int x = N/3; int y = N/5; if(!check(N, x, y)) System.out.println(-1); } public static boolean check(int N, int x, int y)..

1d-1c/BOJ 2020.10.04

1712_손익분기점 (JAVA)

1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 www.acmicpc.net import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int A = sc.nextInt(); int B = sc.nextInt(); int C = sc.nextInt(); if(C

1d-1c/BOJ 2020.10.04

2798_블랙잭 (JAVA)

2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는다. 합이 M을 넘지 않는 카드 3장을 찾을 수 있 www.acmicpc.net import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int M = sc.nextInt(); int[] card = new int[N]; for(int i=0; i

1d-1c/BOJ 2020.10.03

11729_하노이 탑 이동 순서 (JAVA)

11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net [문제 풀이 해결 방법] ** 원판 2개인 경우 == hanoi(2, A, B, C) ** 원판 3개인 경우 == hanoi(3, A, B, C) hanoi(3, A, B, C)에는 hanoi(2, A, B, C)가 두 번 포함되어 있다. 이를 그림으로 다시 나타내면 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new ..

1d-1c/BOJ 2020.10.02

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