프로그래밍 언어24 2343: 기타레슨-이진탐색 강토는 자신의 기타 강의 동영상을 블루레이로 만들어 판매하려고 한다. 블루레이에는 총 N개의 강의가 들어가는데, 블루레이를 녹화할 때, 강의의 순서가 바뀌면 안 된다. 순서가 뒤바뀌는 경우에는 강의의 흐름이 끊겨, 학생들이 대혼란에 빠질 수 있기 때문이다. 즉, i번 강의와 j번 강의를 같은 블루레이에 녹화하려면 i와 j 사이의 모든 강의도 같은 블루레이에 녹화해야 한다.강토는 이 블루레이가 얼마나 팔릴지 아직 알 수 없기 때문에, 블루레이의 개수를 가급적 줄이려고 한다. 오랜 고민 끝에 강토는 M개의 블루레이에 모든 기타 강의 동영상을 녹화하기로 했다. 이때, 블루레이의 크기(녹화 가능한 길이)를 최소로 하려고 한다. 단, M개의 블루레이는 모두 같은 크기이어야 한다.강토의 각 강의의 길이가 분 단위(.. 2025. 4. 2. 2512: 예산-이진탐색 문제국가의 역할 중 하나는 여러 지방의 예산요청을 심사하여 국가의 예산을 분배하는 것이다. 국가예산의 총액은 미리 정해져 있어서 모든 예산요청을 배정해 주기는 어려울 수도 있다. 그래서 정해진 총액 이하에서 가능한 한 최대의 총 예산을 다음과 같은 방법으로 배정한다.모든 요청이 배정될 수 있는 경우에는 요청한 금액을 그대로 배정한다.모든 요청이 배정될 수 없는 경우에는 특정한 정수 상한액을 계산하여 그 이상인 예산요청에는 모두 상한액을 배정한다. 상한액 이하의 예산요청에 대해서는 요청한 금액을 그대로 배정한다. 예를 들어, 전체 국가예산이 485이고 4개 지방의 예산요청이 각각 120, 110, 140, 150이라고 하자. 이 경우, 상한액을 127로 잡으면, 위의 요청들에 대해서 각각 120, 110,.. 2025. 3. 28. 2805: 나무 자르기-이진탐색 https://www.acmicpc.net/problem/2805 문제상근이는 나무 M미터가 필요하다. 근처에 나무를 구입할 곳이 모두 망해버렸기 때문에, 정부에 벌목 허가를 요청했다. 정부는 상근이네 집 근처의 나무 한 줄에 대한 벌목 허가를 내주었고, 상근이는 새로 구입한 목재절단기를 이용해서 나무를 구할것이다.목재절단기는 다음과 같이 동작한다. 먼저, 상근이는 절단기에 높이 H를 지정해야 한다. 높이를 지정하면 톱날이 땅으로부터 H미터 위로 올라간다. 그 다음, 한 줄에 연속해있는 나무를 모두 절단해버린다. 따라서, 높이가 H보다 큰 나무는 H 위의 부분이 잘릴 것이고, 낮은 나무는 잘리지 않을 것이다. 예를 들어, 한 줄에 연속해있는 나무의 높이가 20, 15, 10, 17이라고 하자. 상근이가 .. 2025. 3. 26. 백준#2839 2839번은 수학적 사고가 필요한 문제인데요. 5키로그램 봉지와 3키로그램 봉지를 잘 조합하여 최소한의 봉지수로 N킬로그램(input)을 나눠담는 문제입니다. 그렇기 때문에 5키로그램으로 먼저 나누고 안되면 3키로그램을 이용해야 하는데요. 즉, 15처럼 3으로도 나눠지고 5로도 나눠지는 수가 들어온다면 5킬로그램 3봉지로 표현해야 한다는 것입니다. 5로 나눌 수 없는 것을 3을 어떻게 조합하면 될지 생각해봅시다. 3*2인 6은 5로 나누면 나머지가 1입니다. 3*3인 9를 5로 나누면 나머지가 4입니다. 이를 이용해서 문제를 분석해볼까요? 영 모르겠는 문제를 만나면 종종 직접 적어보는 것도 나쁘지 않습니다. 숫자(N)345678910 봉지개수(5봉지수+3봉지수)1X12X232 1(0+1) (1+0)2.. 2024. 5. 11. 24.04.04 #25314 stringBuilder # 25314 바로 print하기▼ System.out. println(출력할 것);은 개행 문자가 마지막에 추가되어 출력되고 System.out. print(출력할 것);은 추가되지 않고 출력됩니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int N =in.nextInt(); int cnt=N/4+1; if(N%4==0)cnt=N/4; for(int i=0; i 2024. 4. 4. 24.03.26 java 백준 문제 풀이 -입출력과 사칙연산 입출력과 사칙연산 단계 입출력과 사칙연산 www.acmicpc.net #2588 내 풀이 python에서 유사한 문제를 풀었던 기억이 났다. 나누기(/)과 나머지(%) 연산을 이용하여 자릿수를 구하는 문제라고 해석하여 아래와 같이 풀이했다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int b = in.nextInt(); int a = in.nextInt(); int l,m,n; l = (a%10)*b; m = ((a/10)%10)*b; n = ((a/100)%10)*b; System.out.println(l); System.o.. 2024. 3. 26. 이전 1 2 3 4 다음