Algorithm/BOJ 51

[백준 - 2839] 설탕배달 - Java

문제 설명 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 풀이 : Success 소스 코드 import java.util.Scanner; class Main { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(), sugar = N, result; if (N >= 5) { result = N / 5; N %= 5; if (N % 3 == 0) { result += N / 3; } else { w..

Algorithm/BOJ 2022.02.15

[백준 - 2579] 계단 오르기 - Java

문제 설명 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 풀이 : Success 소스 코드 import java.util.Scanner; class Main { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int n = Integer.parseInt(sc.nextLine()); int[] memo = new int[301]; int[] steps = new int[n + 1]; for (int i = 1; i = 2) memo..

Algorithm/BOJ 2022.02.15

[백준 - 10757] 큰 수 A + B - Java

문제 설명 10757번: 큰 수 A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 1 : Fail(정수 오버플로우) 소스 코드 import java.util.*; public class Main{ public static void main(String args[]){ Scanner sc = new Scanner(System.in); char[] A = sc.next().toCharArray(), B = sc.next().toCharArray(); int maxLength = getMaxLength(A, B), result = 0, mul = 1; for (int i = maxLength -1; i > -1; i--) { result +=..

Algorithm/BOJ 2022.01.05

[백준 - 1076] 저항 - Java

문제 설명 1076번: 저항 첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 위의 표에 있는 색만 입력으로 주어진다. www.acmicpc.net 접근 방법 이 문제는 저항의 색 3개를 입력받게 되는데, 처음 색의 값은 십의 자리수 두번째 색의 값은 첫번째 자리수로 인식하고 세번째 색의 곱로 처음 색과 두번째 색으로 만들어진 십의 자리수를 곱해준다. 이때 색깔별 값과 곱은 정해진 값들이므로 Hashmap 자료구조를 이용했다. 처음 색과 두번째 색의 값을 StringBulider 객체로 이어주었고(문자열로) 세번째 색의 곱을 곱해주었는데, 다만 세가지 색 모두 white white white가 나오는 경우 99*1000000000의 값을 표현해야되기 때문에 BigIne..

Algorithm/BOJ 2022.01.05

[백준 - 1009] 분산처리 - Java

문제 설명 1009번: 분산처리 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a < 100, 1 ≤ b < 1,000,000) www.acmicpc.net 풀이 1 : Fail(정수 오버플로우 발생) 소스 코드 import java.util.*; public class Main{ public static void main(String args[]){ Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for (int i = 0; i < T; i++) { int a = sc.nextInt(), b = sc.nextInt(); long dataCnt = (long)..

Algorithm/BOJ 2022.01.05