전체 글
[백준] 1065번 - Java(자바)
백준 1065번 자바 https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 문제 내용은 아래 더보기를 누르면 된다. 더보기 알고리즘 양의 정수 X의 각 자리가 등차수열을 이루는데, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어지면, 1
[백준] 4673번 - Java(자바)
백준 4673번 자바 https://www.acmicpc.net/problem/4673 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net 문제내용은 아래 더보기를 누르면 나온다. 더보기 알고리즘 n은 양의 정수이다. d(n)은 n과 n의 각 자리수를 더하는 함수이다. e.g. d(75) = 75 + 7 + 5 = 87 이렇게 n을 d(n)의 생성자라고 하는데, 생성자가 없는 숫자를 셀프 넘버라고 한다. 10000보다 작거나 같은 셀프 넘버를 한 줄에 하나씩 출력..
[백준] 15596번 - Java(자바)
백준 15596번 자바 https://www.acmicpc.net/problem/15596 15596번: 정수 N개의 합 C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 문제 내용은 아래 더보기를 누르면 나온다. 더보기 알고리즘 Java일 경우, Test클래스에 int[] a가 주어진다. int[] a는 합을 구해야 하는 정수 n개가 저장되어 있는 배열이다. 리턴값은 a에 포함되어 있는 정수 n개의 합이다. 지금껏 풀었던 문제와 달라서 당황할 수 있는데 일..
JVM(자바가상머신)이란? - Part 3, ClassLoader
* 2023.05.24 내용 추가 JVM(자바가상머신)이란? - Part 1, 소개 자바를 쓰는 개발자라면 누구나 들어봤을 JVM(Java Virtual Machine)을 알아보려고 한다. 자바 바이트코드가 JRE에서 동작을 하는데, 이 JRE에서 가장 중요한 요소는 자바 바이트코드를 해석하고 실행하 ssdragon.tistory.com JVM(자바가상머신)이란? - Part 2, Execution Engine JVM(자바가상머신)이란? - Part 1 자바를 쓰는 개발자라면 누구나 들어봤을 JVM(Java Virtual Machine)을 알아보려고 한다. 자바 바이트코드가 JRE에서 동작을 하는데, 이 JRE에서 가장 중요한 요소는 자바 ssdragon.tistory.com JVM(자바가상머신)이란? ..
[백준] 4344번 - Java(자바)
백준 4344번 자바 https://www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 내용을 바로 보고싶으면 아래 더보기를 눌리면 된다. 더보기 알고리즘 첫째 줄에 테스트 케이스 개수 C가 주어진다. 둘째 줄부터 학생의 수 N이 주어지고, N명의 점수가 이어서 주어진다. 1 ≤ N ≤ 1000, N은 정수이고, 0 ≤ 점수 ≤ 100 이다. 1. 학생점수를 넣을 배열 arr, 점수의 합 sum, 평균을 넘은 학생 수 count를 만든다. 2. 테스트 케이스의 개수 C 입력받는다. 3. C만큼 반복한다. 3-1. sum과 count를 0으..
자바 getBytes()
🤔 getBytes()이란? getBytes() 메서드는 String(문자열)을 default charset으로 인코딩하여 byte 배열로 반환해준다. 이 문자열(String)을 플랫폼의 default charset을 사용하여 바이트의 시퀀스로 인코딩하고, 새로운 바이트 배열에 결과를 저장한다. 이 문자열이 default charset으로 인코딩 할 수 없는 경우 이 메서드의 동작은 지정되지 않는다. 이 java.nio.charset.CharsetEncoder 클래스는 인코딩 과정에 더 많은 제어가 필요할 때 사용한다. Return : 위 내용에서 언급한 결과로 생긴 byte 배열 즉, 우리가 사용하는 IDE의 default charset을 사용하여 문자열을 byte로 인코딩하여 byte 배열에 넣어서 ..
자바 toCharArray()
🤔 toCharArray()란? String 문자열을 char형 배열로 바꿔서 반환해주는 메서드이다. "ABCD" 라는 문자열이 있으면 arr[0] = 'A' arr[1] = 'B' arr[2] = 'C' arr[3] = 'D' 위 값처럼 char 배열을 반환해준다. 이 메서드는 String 메서드로 한번 살펴보자. 다음은 String 클래스에 정의된 toCharArray() 메서드이다. 이 문자열을 새 문자 배열로 변환합니다. Returns : 새로 할당된 문자배열의 길이는 이 문자열의 길이이고, 이 문자배열의 내용은 문자열에 포함하는 문자 내용을 순서대로 초기화한다. 즉, String으로 받은 문자열을 char 문자로 쪼갠 뒤 char[]배열에 순서대로 값을 넣어 반환한다는 뜻이다. 위에 예시로 적어..
[백준] 8958번 - Java(자바)
백준 8958번 자바 https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 문제내용은 아래 더보기를 누르면 나온다. 더보기 더보기 알고리즘 첫째 줄에 테스트 케이스의 개수 N이 주어진다. 그 후로 N개만큼 "OXOOOOXXO" 가 한줄씩 주어진다. O는 문제를 맞은것, X는 문제를 틀린것이다. 연속으로 문제를 맞추면 점수가 연속된 O의 개수이다. e.g. OOO = 1 + 2 + 3 = 6점 OOX = 1 + 2 + 0 = 3점 ..