Java 21

[SWEA] 3431. 준환이의 운동관리 (자바/JAVA)

3431. 준환이의 운동관리 D3 최근 경도비만 판정을 받은 준환이는 적절한 몸을 유지하기 위하여 1주일에 L분 이상 U분 이하의 운동을 하여야 한다.준환이는 이번 주에 X분만큼 운동을 하였다.당신은 준환이가 제한되어 있는 시간을 넘은 운동을 한 것인지, 그것이 아니라면 몇 분 더 운동을 해야 제한을 맞출 수 있는지 출력하는 프로그램을 작성해야 한다.[입력]첫 번째 줄에 테스트 케이스의 수 T가 주어진다.각 테스트 케이스의 첫 번째 줄에는 세 정수 L, U, X(0≤ L ≤ U ≤ 107, 0 ≤ X ≤ 107)가 공백으로 구분되어 주어진다.[출력]각 테스트 케이스마다 I가 필요한 양보다 더 많은 운동을 하고 있다면 -1을 출력하고, 아니라면 추가로 몇 분을 더 운동해야 하는지 출력한다. 입력3300 4..

[SWEA] 13218. 조별과제 (자바/JAVA)

13218. 조별과제 D3 당신은 교수이다. 매주 월요일과 수요일 오전 9시부터 10시 30분까지 진행되는 당신의 수업에는 N명의 수강생이 있다. 당신은 학생들에게 조별과제를 부여하기 위해 학생들을 몇 개의 조로 나누려고 한다. 당신은 한 조가 2명 이하의 학생으로 구성되면 토론이나 업무 배분 등이 제대로 이루어지지 않아 팀워크를 평가할 기회를 박탈당한다고 생각한다. 따라서, 당신은 3명 이상의 학생으로 구성된 조의 수를 최대화하려고 한다. 각 학생은 정확히 한 개의 조에만 속할 수 있다. 학생들을 조로 적당히 나누었을 때, 3명 이상의 학생으로 구성된 조의 수의 최댓값이 얼마인지를 구하는 프로그램을 작성하라.[입력] 첫 번째 줄에 테스트 케이스의 수 T가 주어진다. 각 테스트 케이스는 하나의 ..

[SWEA] 12368. 24시간 [자바/JAVA]

12368. 24시간 D3Box에 담기 하루는 24시간이다. 24시간제 시계에서는 하루가 자정에서 시작해서 다음 날 자정에서 끝나며, 자정에서부터 지금까지 흐른 시간을 기준으로 시각을 표기한다. 예를 들어, 지금이 오후 8시라면 “20시”와 같은 꼴로 표현할 수 있다. 자정을 표기하는 유일한 방법은 “0시”임에 유의하라. 지금은 자정에서부터 정확히 A시간이 지났다. 앞으로 정확히 B시간이 더 지난다면, 24시간제 시계에서 그 때는 몇 시일까?[입력] 첫 번째 줄에 테스트 케이스의 수 T가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 두 개의 정수 A, B (0 ≤ A, B ≤ 23)이 공백 하나를 사이로 두고 순서대로 주어진다.[출력] 각 테스트 케이스마다, 현재 A시인 상황에서 앞으로 ..

[백준] 18258번 '큐2' (자바/JAVA)

문제정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.명령은 총 여섯 가지이다.push X: 정수 X를 큐에 넣는 연산이다.pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 큐에 들어있는 정수의 개수를 출력한다.empty: 큐가 비어있으면 1, 아니면 0을 출력한다.front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.입력첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의..

백준(Java) 2025.04.30

[백준] 10773번 '제로' (자바/JAVA)

문제나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다.재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 부르는 사고를 치기 일쑤였다.재현이는 잘못된 수를 부를 때마다 0을 외쳐서, 가장 최근에 재민이가 쓴 수를 지우게 시킨다.재민이는 이렇게 모든 수를 받아 적은 후 그 수의 합을 알고 싶어 한다. 재민이를 도와주자!입력첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000)이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 쓴다.정수가 "0"일 경우에 지울 수 있는 수가 있음을 보장할 수 있다.출력..

백준(Java) 2025.04.30

[백준] 28278번 '스택2' (자바/JAVA)

문제정수를 저장하는 스택을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.명령은 총 다섯 가지이다.1 X: 정수 X를 스택에 넣는다. (1 ≤ X ≤ 100,000)2: 스택에 정수가 있다면 맨 위의 정수를 빼고 출력한다. 없다면 -1을 대신 출력한다.3: 스택에 들어있는 정수의 개수를 출력한다.4: 스택이 비어있으면 1, 아니면 0을 출력한다.5: 스택에 정수가 있다면 맨 위의 정수를 출력한다. 없다면 -1을 대신 출력한다.입력첫째 줄에 명령의 수 N이 주어진다. (1 ≤ N ≤ 1,000,000)둘째 줄부터 N개 줄에 명령이 하나씩 주어진다.출력을 요구하는 명령은 하나 이상 주어진다.출력출력을 요구하는 명령이 주어질 때마다 명령의 결과를 한 줄에 하나씩 출력한다.예제 입력 1 ..

백준(Java) 2025.04.30

[백준] 2587번 '대푯값2' (자바/JAVA)

문제어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + 30) / 5 = 170 / 5 = 34가 된다.평균 이외의 또 다른 대표값으로 중앙값이라는 것이 있다. 중앙값은 주어진 수를 크기 순서대로 늘어 놓았을 때 가장 중앙에 놓인 값이다. 예를 들어 10, 40, 30, 60, 30의 경우, 크기 순서대로 늘어 놓으면10 30 30 40 60이 되고 따라서 중앙값은 30이 된다.다섯 개의 자연수가 주어질 때 이들의 평균과 중앙값을 구하는 프로그램을 작성하시오.입력첫째 줄부터 다섯 번째 줄까지 한 줄에 하나씩 자연수가 주어진다..

백준(Java) 2025.04.29

백준 2750번 '수 정렬하기' (자바/JAVA)

문제N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.입력첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.출력첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.예제 입력 1 552341예제 출력 1 12345 코드import java.util.*;import java.io.*;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); i..

백준(Java) 2025.04.29

[백준] 11021번 'A+B -7' (자바/JAVA)

문제두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.입력첫째 줄에 테스트 케이스의 개수 T가 주어진다.각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 출력각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.예제 입력 1 51 12 33 49 85 2예제 출력 1 Case #1: 2Case #2: 5Case #3: 7Case #4: 17Case #5: 7 코드import java.util.*;import java.io.*;class Main { public static void main(String[] args) { Scanner sc = new Scanner(Sy..

백준(Java) 2025.04.29

[백준] 11653번 '소인수분해' (자바/JAVA)

문제정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.입력첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.출력N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다.예제 입력 1 72예제 출력 1 22233예제 입력 2 3예제 출력 2 3예제 입력 3 6예제 출력 3 23예제 입력 4 2예제 출력 4 2예제 입력 5 9991예제 출력 5 97103 코드import java.util.*;import java.io.*;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.n..

백준(Java) 2025.04.29