Java
-
[Baekjoon Online Judge] 1212번: 8진수 2진수문제 풀이/Baekjoon Online Judge 2021. 2. 5. 20:37
1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 요구사항 - 8진수가 주어졌을 때, 2진수로 변환한다. 입력 - 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. 출력 - 첫째 줄에 주어진 수를 2진수로 변환하여 출력한다. 수가 0인 경우를 제외하고는 반드시 1로 시작해야 한다. 빠른 변환을 위하여 map에 key 값을 8진수로, value 값을 8진수를 2진수로 나타낸 값으로 세팅한다. 입력받은 8진수를 for loop를 돌며 값을 채워준다. 조건 중에 반드시 1로 시작해야 하기 때문에 완성된 이진수 문자열을 체크하여 0을 삭제해준다. import java.io.BufferedRea..
-
[Baekjoon Online Judge] 11656번: 접미사 배열문제 풀이/Baekjoon Online Judge 2021. 2. 5. 20:03
11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net 요구사항 - 접미사 배열은 문자열 S의 모든 접미사를 사전순으로 정렬해 놓은 배열이다. - 문자열 S가 주어졌을 때, 모든 접미사를 사전순으로 정렬한 다음 출력한다. 입력 - 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. 출력 - 첫째 줄부터 S의 접미사를 사전순으로 한 줄에 하나씩 출력한다. 입력받은 문자열을 substring으로 시작 index를 하나씩 이동하며 List에 저장한다. 간단하게 정렬을 한 후 출력하여 해결하였다. import java.io.BufferedReade..
-
[Baekjoon Online Judge] 10988번: 팰린드롬인지 확인하기문제 풀이/Baekjoon Online Judge 2021. 2. 5. 20:00
10988번: 팰린드롬인지 확인하기 첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다. www.acmicpc.net 요구사항 - 알파벳 소문자로만 이루어진 단어가 주어진다. - 이 단어가 팰린드롬인지 아닌지 확인한다. - 팰린드롬이란 앞으로 읽을 때와 거꾸로 읽을 때 똑같은 단어를 말한다. 입력 - 첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다. 출력 - 첫째 줄에 팰린드롬이면 1, 아니면 0을 출력한다. 입력받은 word의 길이를 기준으로 2로 나누어 그 전까지의 숫자를 비교하며 로직을 작성하였다. word의 길이가 1인 경우 무조건 팬린드롬이 맞기 때문..
-
12주차 과제: 애노테이션Programming/Java live study 2021. 2. 3. 16:21
12주차 과제: 애노테이션 · Issue #12 · whiteship/live-study 목표 자바의 애노테이션에 대해 학습하세요. 학습할 것 (필수) 애노테이션 정의하는 방법 @retention @target @documented 애노테이션 프로세서 마감일시 2021년 2월 6일 토요일 오후 1시까지. github.com 목표 자바의 애노테이션에 대해 학습하세요. 학습할 것 - 애노테이션 정의하는 방법 - @Retention - @Target - @Documented - 애노테이션 프로세서 1. 애노테이션이란? 참고 : honbabzone.com/java/java-anontation/ b-programmer.tistory.com/264 gowoonsori.site/java/annotation/ 1.1 ..
-
[Baekjoon Online Judge] 2193번: 이친수문제 풀이/Baekjoon Online Judge 2021. 2. 2. 21:57
2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 요구사항 - 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수라 한다. - 이친수는 0으로 시작하지 않는다. - 이친수는 1이 두 번 연속 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다. 입력 - 첫째 줄에 N이 주어진다. N(1 ≤ N ≤ 90) 출력 - 첫째 줄에 N자리 이친수의 개수를 출력한다. 우선 간단한 규칙을 찾기 위해서 N의 범위에 맞춰 만족하는 이친수의 개수를 세보았..
-
[Baekjoon Online Judge] 2156번: 포도주 시식문제 풀이/Baekjoon Online Judge 2021. 2. 2. 21:38
2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 요구사항 - 테이블 위에 다양한 포도주가 들어 있는 포도주 잔이 일렬로 놓여 있었다. 포도주 시식을 위해서는 두 가지 규칙이 있다. 1. 포도주 잔을 선택하면 그 잔을 들어있는 포도주는 모두 마셔야 하고, 마신 후에는 원래 위치에 다시 놓아야 한다. 2. 연속으로 놓여 있는 3잔을 모두 마실 수는 없다. - 각 포도주 잔에 들어 있는 포도주의 양이 주어졌을 때, 가장 많은 포도주를 마실 수 있도록 작성한다. 입력 - 첫째 줄에 포도주 잔의 개수 n이 주어진다. (..
-
[Baekjoon Online Judge] 2748번: 피보나치 수 2문제 풀이/Baekjoon Online Judge 2021. 2. 1. 21:23
2748번: 피보나치 수 2 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 요구사항 - 피보나치 수는 0과 1로 시작한다. 0 번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이다. 입력 - 첫째 줄에 n이 주어진다. n은 90보다 작거나 같은 자연수이다. 출력 - 첫째 줄에 n번째 피보나치 수를 출력한다. import java.io.BufferedReader; import java.io.BufferedWriter; import java...
-
[Baekjoon Online Judge] 1932번: 정수 삼각형문제 풀이/Baekjoon Online Judge 2021. 2. 1. 11:21
1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net 요구사항 - 맨 위층 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성한다. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다. 입력 - 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. 출력 - 첫째 줄에 합이 최대가 되는 경로에 있는 수의 합을 출력한다. 상각형의 밑단에서 부터 dp 테이블을 채우고, 그중에 최대값..