공부하기 509

[Java] 백준 풀기 2884 - 알람 시계

자바 백준 2884번 브론즈 3 https://www.acmicpc.net/problem/2884 2884번: 알람 시계 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, www.acmicpc.net 문제 보기 분류: 수학, 사칙연산 문제 풀기 조건문을 이용하여 minute 에 대한 두 개의 분기점을 만들고, hour 에 대한 두 개의 분기점을 만든다. minute 이 45 보다 크면 minute 에 -45를 하여 바로 내보내고, 그렇지 않고 45 보다 작으면 minute 에 +15 를 하여 저장한다. minute 가 45 보다 작은 경우, hour 이 0 일 경우 이 ..

공부하기/백준 2023.06.21

[Java] 백준 풀기 1550 - 16진수

자바 백준 1550번 브론즈 2 https://www.acmicpc.net/problem/1550 1550번: 16진수 첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다. www.acmicpc.net 문제 보기 분류: 수학, 구현 문제 풀기 Integer.parseInt() 를 사용하여 진수 변환을 한다. Java Integer parseInt (String s, int radix) Method 를 사용하여 진수 변환을 하는데, 기존에 사용하던 Java Integer parseInt (String s) Method 는 int radix 이 10 으로 지정된 메서드이다. St..

공부하기/백준 2023.06.20

[Java] 백준 풀기 11021 - A+B 7

자바 백준 11021번 브론즈 5 https://www.acmicpc.net/problem/11021 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 문제 보기 분류: 수학, 구현, 사칙연산 문제 풀기 테스트 케이스 개수만큼 for loop 을 작동시킨다. 그리고 숫자 A 와 B 를 각각 입력받고 덧셈 연산을 하여 결과 출력 형식에 맞게 제출한다. 코드 보기 import java.util.Scanner; public class Main { static Scanner sc = new Scanner(System.in); public static void main(String[] ar..

공부하기/백준 2023.06.18

[Java] 백준 풀기 2693 - N번째 큰 수

자바 백준 2693번 브론즈 1 https://www.acmicpc.net/problem/2693 2693번: N번째 큰 수 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 배열 A의 원소 10개가 공백으로 구분되어 주어진다. 이 원소는 1보다 크거나 같고, 1,000 www.acmicpc.net 문제 보기 분류: 정렬 문제 풀기 숫자를 array에 입력 받고 오름차순 정렬을 한 후 index (10 - N번째) 의 값을 출력한다. 코드 보기 import java.util.Scanner; import java.util.Arrays; public class Main { static Scanner sc = new Scanner(Syste..

공부하기/백준 2023.06.18

[Java] 백준 풀기 9625 - BABBA

자바 백준 9625번 실버 5 https://www.acmicpc.net/problem/9625 9625번: BABBA 상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다. 기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했 www.acmicpc.net 문제 보기 분류: 다이나믹 프로그래밍 문제 풀기 버튼을 눌렀을때 다음에 나타날 A의 개수는 이전의 B의 개수와 같다. B -> BA 버튼을 눌렀을때 다음에 나타날 B의 개수는 이전의 A와 B의 개수와 같다. A -> B, B -> BA K번째 버튼을 누를때까지 count를 저장할 k+1 개의 array를 생성한다.버튼을 한번 눌렀을때의 값을 aCount[1] = 0 과 ..

공부하기/백준 2023.06.16

[Java] 백준 풀기 1159 - 농구 경기

자바 백준 1159번 브론즈 2 https://www.acmicpc.net/problem/1159 1159번: 농구 경기 상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작 www.acmicpc.net 문제 보기 분류: 구현, 문자열 문제 풀기 모든 이름을 입력받아 저장한다. 해시맵을 사용하여 이름의 첫 알파벳과 그 빈도수를 저장한다. 이때, getOrDefault() 를 사용하여 저장된 알파벳인 key 가 존재하면 기존의 value 에 1 을 누적하여 더하고 그렇지 않고 첫 알파벳 key 이면 0 + 1 을 저장한다. 모든 이름의 첫 알파벳을 HashMap 에 저장한 ..

공부하기/백준 2023.06.14

[Java] 백준 풀기 1264 - 모음의 개수

자바 백준 1264번 브론즈 4 https://www.acmicpc.net/problem/1264 1264번: 모음의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다. 입력의 끝에는 한 줄 www.acmicpc.net 문제 보기 분류: 구현, 문자열 문제 풀기 while loop 를 실행시켜 문장을 입력받는다. 이때 "#" 이 입력되면 while loop 를 중단한다. 입력 받은 문장을 countVowels 메서드에 대입힌다. 확인해야 할 모음은 "aeiouAEIOU" 이며 변수 vowels 에 String 으로 저장한다. 입력된 문장의 알파벳을 하나씩 빼내..

공부하기/백준 2023.06.13

[Java] 백준 풀기 2506 - 점수계산

자바 백준 2506번 브론즈 3 https://www.acmicpc.net/problem/2506 2506번: 점수계산 OX 문제는 맞거나 틀린 두 경우의 답을 가지는 문제를 말한다. 여러 개의 OX 문제로 만들어진 시험에서 연속적으로 답을 맞히는 경우에는 가산점을 주기 위해서 다음과 같이 점수 계산을 하기로 www.acmicpc.net 문제 보기 분류: 수학, 구현, 사칙연산 문제 풀기 총 문제의 개수를 입력 받고, 채점 결과를 array 에 입력 받는다. 계산된 점수와 연속으로 맞은 개수를 저장할 변수를 각각 초기화하여 생성한다. 채점 결과를 하나씩 빼내어 만약 1 이 나오면 지금까지 저장된 연속 맞은 개수를 하나 늘리고 이 값을 점수에 누적 합한다. 그렇지 않고 0 이 나오면 연속 맞은 개수를 0 ..

공부하기/백준 2023.06.12

[Java] 백준 풀기 1927 - 최소 힙

자바 백준 1927번 실버 2 https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제 보기 분류: 자료 구조, 우선순위 큐 문제 풀기 메서드 분리를 위해 명령을 모두 배열에 저장한다. 우선순위 큐를 기본 옵션으로 생성하여 낮은 숫자가 부여되도록한다. 명령어를 하나씩 빼내어 0 또는 그 외의 자연수에 대한 조건문을 실행한다. 0 일 경우 배열이 비어있는지 확인하고 비었다면 0 을 출력, 그렇지 않으면 poll() 을 통해 가장 ..

공부하기/백준 2023.06.11