[백준] 303 - 수학 1 (참고) : Base Conversion (11576번 JAVA) [StringBuilder의 내장함수 reverse()를 사용한 방식] import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class Main{ public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedRe..
백준
[백준] 큰 수 A + B (10757번 JAVA) * Math.BigInteger 라이브러리를 사용하지 않는 방법 1. String 으로 문자열을 입력 받는다. 2. 배열에 역순으로 저장 한다. 3. 동일 자리 수를 더한다. 이때, value = A[i] + B[i] 라 칭한다. A[i] = value % 10 // 해당 자리 수 A[i+1] += value / 10 // 올림 수 4. 계산 완료된 배열을 역순으로 출력한다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter..
[접근 과정] 입력값 : -13 -13 / -2 = 몫 : 7 / 나머지 : 1 => {1} 7 / -2 = 몫 : -3 / 나머지 : 1 => {1,1} -3 / -2 = 몫 : 2 / 나머지 : -1 => {1,1,1} 2 / -2 = 몫 : -1 / 나머지 : 0 => {1,1,1,0} -1 / -2 = 몫 : 1 / 나머지 : 1 => {1,1,1,0,1,1} 문자열 거꾸로 변환 = > 110111 [ 110111 ] 위와 같이 순서대로 나머지의 절대값이 저장되는 구조이다. 이번엔 -15를 입력값으로 하는 연산 과정이다. 입력값 : -15 -15 / -2 = 몫 : 8 / 나머지 : 1 => {1} 8 / -2 = 몫 : -4 / 나머지 : 0 => {1,0} -4 / -2 = 몫 : 2 / 나머..
[백준] 300 - 수학 1 : 숨바꼭질 6 (17087번 JAVA) [정수형 변수 범위] 동생 혹은 수빈이의 위치 값 (최대) : 1,000,000,000 (십억) int 자료형으로 커버 가능 (int 자료형 : 약 -21억 ~ 약 21억) [접근 과정] 수빈이와 동생 각각 사이의 거리를 구한다. (Math.adp() : 절댓값 함수) 거리들의 최대 공약수를 구한다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenize..
[백준] 300 - 수학 1 : 조합 0의 개수 (2004번 JAVA) [개선 전 방법] (시간 초과) import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class Main{ public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.i..
[백준] 300 - 수학 1 : 팩토리얼 0의 개수 (1676번 JAVA) [접근방법] * n! 에서 뒤에서 부터 연속으로 나오는 0의 개수는 "10을 인수로 갖는 개수" 와 같다. 따라서, 10을 인수로 몇개나 갖는가 를 구할 것이다. 이때, .n!의 소인수 중 2의 개수 > 5의 개수 이므로, 5의 개수 = 10의 개수 라고 할 수 있다. 따라서, n! 가 소인수 5를 몇개 같는가 가 질문의 정답이다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public cla..