본문 바로가기

전체 글376

[백준] 5622번 : 다이얼 – JAVA [자바] https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net 문제 문제 풀이 백준 5622번 다이얼은 브론즈 2 난이도의 구현 문제이다. 이 문제에서는 단어 S가 주어지고 이 전화를 걸기 위해 걸리는 필요한 최소 시간을 구해서 출력하면 된다. 문제는 처음에 어려워 보이지만 되게 간단하다. 우선 그림에 나와있는 2번에 있는 A, B, C는 전화를 거는데 3초가 걸린다. 그 왼쪽에 있는 D, E, F는 4초 이런 식이다. 그리고 마지막에 있는 W, X, Y, Z는 10초가 걸린다. 즉, 예를 들어서 단어 "WA"가 입력으로 주어지면 W는 10초.. 2022. 7. 9.
[백준] 1463번 : 1로 만들기 – JAVA [자바] https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 문제 풀이 백준 1463번 1로 만들기는 실버 3 난이도의 DP 문제이다. 이 문제는 DP 문제 중에서도 기본적인 문제이니 꼭 풀어보고 이해하는 것을 추천한다. 이 문제에서는 정수 N이 주어지고 이 정수를 1로 만들 때 사용되는 최소 연산 횟수를 구하면 된다. 할 수 있는 연산은 3가지가 있다. 1. N을 3으로 나눌 수 있으면 3으로 나눈다. 2. N을 2로 나눌 수 있으면 2로 나눈다. 3. N에서 1을 뺀다. 이 문제는 4가지의 케이스로 나눠서 풀 수 있다. 그전에 배열 dp를 선언하는데 dp [i].. 2022. 7. 9.
[백준] 2440번 : 별 찍기 - 3 – JAVA [자바] https://www.acmicpc.net/problem/2440 2440번: 별 찍기 - 3 첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 www.acmicpc.net 문제 문제 풀이 백준 2440번 별 찍기 - 3은 브론즈 4 난이도의 구현 문제이다. 이 문제도 별 찍기 문제이다. 첫 줄에는 *을 n개, 둘째 줄에는 *을 n - 1개, 그리고 n번째 줄에는 별을 1개 출력하면 된다. 이 문제는 이중 for-loop을 이용해서 풀 수 있다. 바깥 for-loop은 int i = n부터 i ≥ 1까지 진행한다. 왜냐하면 첫째 줄에는 *을 n개, 둘째 줄에는 *을 n - 1개, 그리고 n번째 줄에는 별을 1개씩 출력해야 하기 때문이다. 그리고 안에 있는 fo.. 2022. 7. 9.
[백준] 7287번 : 등록 – JAVA [자바] https://www.acmicpc.net/problem/7287 7287번: 등록 첫 줄에 자신이 맞은 문제의 수, 둘째 줄에 아이디를 출력한다. www.acmicpc.net 문제 문제 풀이 백준 7287번 등록은 브론즈 5 난이도의 구현 문제이다. 이 문제는 조금 특별한 문제이다. 자신이 백준에서 맞은 문제 수와 아이디를 출력하면 되는 문제이다. 이 문제는 자신의 프로필에 들어가서 다음과 같이 빨간색으로 나와있는 것을 그대로 써서 출력해주면 된다. 코드 import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { System.out.print("맞은 문.. 2022. 7. 9.
[백준] 1065번 : 한수 – JAVA [자바] https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 문제 문제 풀이 백준 1065번 한수는 실버 4 난이도의 브루트 포스 문제이다. 만약에 자연수 N의 각 자리가 등차수열을 이루면, 이 N을 한수라고 한다. 이 문제에서는 자연수 N이 주어진다. 그리고 N보다 작거나 같은 한수의 개수를 출력하면 되는 문제이다. 우선 10보다 작은 수들을 보겠다. 예를 들어서 1이나 3은 모두 한 자릿수여서 등차수열을 이룬다. 그래서 1부터 9까지는 전부 한수이다. 이제.. 2022. 7. 8.
[백준] 4673번 : 셀프 넘버 – JAVA [자바] 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 문제 문제 풀이 백준 4673번 셀프 넘버는 실버 5 난이도의 수학, 구현 및 브루트 포스 문제이다. 이 문제에서는 함수 d(n)이 있다. d(n)은 n과 n의 각 자릿수를 더하는 함수이다. 그리고 n을 d(n)의 생성자라고 한다. 그리고 생성자가 없는 수를 셀프 넘버라고 한다. 이 문제에서는 10000보다 작거나 같은 셀프 넘버들을 전부 출력하면.. 2022. 7. 8.
[백준] 1157번 : 단어 공부 – JAVA [자바] https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 문제 문제 풀이 백준 1157번 단어 공부는 브론즈 1 난이도의 구현 및 문자열 문제이다. 이 문제에서는 문자열 1개가 주어진다. 그리고 이 문자열에서 가장 많이 사용된 알파벳을 출력하는 것이다. 이 문제에서 또 중요하게 알아야 할게 바로 대문자와 소문자를 구분하지 않는다는 것이고 답은 "?" 또는 대문자 알파벳으로 출력해야 한다는 것이다. 이 문제에서는 getOrDefault (Object Key, V defaultValue)라.. 2022. 7. 8.
[백준] 15596번 : 정수 N개의 합 – JAVA [자바] 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 문제 문제 풀이 백준 15596번 정수 N개의 합은 브론즈 2 난이도의 수학 및 구현 문제이다. 그리고 이 문제가 다른 문제들과 비교했을 때 조금 다른 점은 함수를 직접 구현해야 하는 것이다. '제출'을 눌러보면 다음과 같이 나와있다는 것을 알 수 있다. 즉, 전처럼 클래스를 직접 만드는 게 아니라 여기 나와있는.. 2022. 7. 8.
반응형