자바 372

[Java] 백준 풀기 2439 - 별 찍기 2

자바 백준 2439번 브론즈 4 https://www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 문제 보기 분류: 구현 문제 풀기 재귀 함수를 구현하여 별을 찍어 본다. https://xcevor.tistory.com/223 [Java] 백준 풀기 2438 - 별찍기 1 자바 백준 2438번 브론즈 5 https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.ne..

공부하기/백준 2023.01.24

[Java] 백준 풀기 2438 - 별 찍기 1

자바 백준 2438번 브론즈 5 https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 문제 보기 분류: 구현 문제 풀기 재귀 함수를 구현하여 별 찍기를 해결해 본다. 순차적으로 늘어나는 별의 개수를 위해 초기 값 int count = 0 과 String star = "" 을 지정하였다. 재귀 함수에 진입할 때마다 count 는 하나씩 늘어나고 별 문자도 하나씩 늘어난다. 함수 .repeat() 을 이용하였으면 더 좋았을 것 같은 생각이 든다. (여담으로 SW Expert Academy 에서는 .repeat() 사용이 불가능했다.) 주어진 숫자와 count..

공부하기/백준 2023.01.24

[Java] 백준 풀기 10817 - 세 수

자바 백준 10817번 브론즈 3 https://www.acmicpc.net/problem/10817 10817번: 세 수 첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100) www.acmicpc.net 문제 보기 분류: 구현, 정렬 문제 풀기 정렬을 구현하지 않고 Collections.sort() 를 이용해 본다. Collections.sort(numList, Collections.reverseOrder()); 내림차순 정렬을 사용하기 위해 reverseOrder() 또한 입력되었다. numList.get(1) 두 번째로 큰 수를 찾기 위해 내림차순 되어있는 ArrayList 에서 두 번째에 해당하는 index 1 의 값을 .get(1) 로 불러온다. 코..

공부하기/백준 2023.01.23

[Java] 코드업 풀기 1902 - 1부터 n까지 역순으로 출력하기

자바 코드업 1902번 재귀함수 https://codeup.kr/problem.php?id=1902 (재귀 함수) 1부터 n까지 역순으로 출력하기 정수 $n$부터 $1$까지 출력하는 재귀함수를 설계하시오. 이 문제는 반복문 for, while 등을 이용하여 풀수 없습니다. 금지 키워드 : for while goto codeup.kr 문제 보기 분류: 재귀함수 문제 풀기 base case 와 recursive case 를 나누어 생각하고 재귀 함수를 작성한다. 현재의 재귀 함수에서 다음 재귀 함수로 진입하는 과정에서 출력 코드의 순서를 상기한다. https://xcevor.tistory.com/220 [Java] 코드업 풀기 1901 - 1부터 n까지 출력하기 자바 코드업 1901번 재귀함수 https:/..

[Java] 코드업 풀기 1901 - 1부터 n까지 출력하기

자바 코드업 1901번 재귀함수 https://codeup.kr/problem.php?id=1901 (재귀 함수) 1부터 n까지 출력하기 $1$부터 정수 $n$까지 출력하는 재귀함수를 설계하시오. 이 문제는 반복문 for, while 등을 이용하여 풀수 없습니다. 금지 키워드 : for while goto codeup.kr 문제 보기 분류: 재귀함수 문제 풀기 base case 와 recursive case 를 나누어 생각하고 재귀 함수를 작성한다. 현재의 재귀 함수에서 다음 재귀 함수로 진입하는 과정에서 출력 코드의 순서를 상기한다. 코드 보기 import java.util.Scanner; public class Main { public static void main(String[] args) { Sc..

[Java] 백준 풀기 4673 - 셀프 넘버

자바 백준 4673번 실버 5 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 문제 보기 분류: 수학, 구현, 브루트포스 알고리즘 문제 풀기 셀프 넘버인지 아닌지를 판단하기 위해 10_000 개의 배열의 Index 를 활용한다. 자기 자신과 각 자리의 합으로 이루어진 숫자는 셀프 넘버가 아니기때문에 배열에 1 로 표시를 해놓는다. 10_000 까지의 숫자를 모두 돌고 나서 배열에 1 이 아닌 0..

공부하기/백준 2023.01.22

[Java] substring() 원하는 위치의 문자열을 가져오기

String class 와 substring() String class 로 생성된 문자열은 char 로 이루어진 단일 문자들의 배열이라고 볼 수 있다. 따라서, String 문자열에서 index 를 이용하면 필요한 위치의 연결된 문자들을 return 할 수 있다. 이와 같이 index 를 이용한 문자를 가져오기 위해서는 substring() 을 사용할 수 있다. 두 가지 타입 substring() 은 두 가지 형태의 parameter 를 입력할 수 있는데, 시작위치만 표기하여 시작부터 끝까지 데이터를 반환하거나 시작위치와 끝위치를 입력하여 선택 부분에 대한 문자를 반환할 수 있다. from start point // 시작 위치만 입력. public String substring (int start_ind..

알아가기/Java 2023.01.21

[Java] 백준 풀기 25304 - 영수증

자바 백준 25304번 브론즈 5 https://www.acmicpc.net/problem/25304 25304번: 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것 www.acmicpc.net 문제 보기 분류: 수학, 구현, 사칙연산 문제 풀기 영수증에 적힌 금액과 구입한 물건의 종류를 차례로 입력받는다. 구입한 물건의 종류만큼 for loop 을 실행하면서 각 물건의 가격과 개수를 입력받는다. 금액과 개수를 곱하여 합산 금액을 누적해 나간다. 영수증에 찍힌 총 그액과 물건의 가격과 개수로 계산된 금액이 서로 일치하는지 판단한다. 코드 보기 // package ..

공부하기/백준 2023.01.20

[Java] 백준 풀기 1158 - 요세푸스 문제

자바 백준 1158번 실버 5 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 문제 보기 분류: 자료 구조, 큐 문제 풀기 입력 받을 Queue 인 numQue 와 요세푸스 수를 저장할 numJosephus 를 준비한다. offer() 을 통해 1 부터 순차적으로 수를 Queue 에 입력 받는다. 모든 수가 저장된 numQue 에서 제일 처음에 들어온 수를 poll() 로 빼내어 맨 뒤에 다시 offer() 로 넣는 과정을 주어진 k - 1 횟수만큼 반복을 한다. 이 과정의 for loop 이 완료될 때마다 그 다음 수를 빼내어 num..

공부하기/백준 2023.01.17