전체 글 573

[Java] 백준 풀기 4134 - 다음 소수

자바 백준 4134번 실버 4 https://www.acmicpc.net/problem/4134 4134번: 다음 소수 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. www.acmicpc.net 문제 보기 분류: 수학, 브루트포스 알고리즘, 정수론, 소수 판정 코드 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 테스트 케이스의 개수 입력 int testCases = sc.nextInt(); // 각 테스트 케이스에 대해 반복 for (int t = 0; t ..

공부하기/백준 2024.04.10

[Java] 백준 풀기 23027 - 1번부터 문제의 상태가…?

자바 백준 23027번 브론즈 2 https://www.acmicpc.net/problem/23027 23027번: 1번부터 문제의 상태가…? 큰일이다. 시험 문제를 본 쿠기는 1번부터 풀 수가 없다. 시험 시간 동안 할 일이 없었던 쿠기는 교수님께 편지를 쓰려고 한다. 작년 시험에서 교수님께 그동안 감사했다는 편지를 전하고 D+을 받 www.acmicpc.net 문제 보기 분류: 구현, 문자열 코드 폴이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 사용자로부터 문자열 입력 String S = sc.next(); // 수정된..

공부하기/백준 2024.04.08

[Java] 백준 풀기 15815 - 천재 수학자 성필

자바 백준 15815번 실버 3 https://www.acmicpc.net/problem/15815 15815번: 천재 수학자 성필 길이가 100이 넘지 않는 수식이 예제 입력과 같이 공백 없이 입력된다. 수식은 0부터 9까지의 숫자와 연산자 '+', '-', '*', '/' 로만 이루어져 있다. 또한, 수식의 계산 중간 과정의 모든 결과는 항상 2 www.acmicpc.net 문제 보기 분류: 자료 구조, 스택 코드 풀이 import java.util.Scanner; import java.util.Stack; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 수식 입력 St..

공부하기/백준 2024.04.07

[Java] 백준 풀기 23037 - 5의 수난

자바 백준 23037번 브론즈 2 https://www.acmicpc.net/problem/23037 23037번: 5의 수난 키파는 문득 3과 4의 견고한 벽에 가로막혀 스포트라이트를 받지 못하는 5를 떠올렸다. '세상에 얼마나 많은 것들이 5와 관련이 있는데!' 키파는 5가 쓰이는 곳을 떠올리기 시작했다. 사람의 손가 www.acmicpc.net 문제 보기 분류: 수학, 구현 코드 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 다섯 자리 양의 정수 입력 int n = sc.nextInt(); // 다섯 자리 양의 정수..

공부하기/백준 2024.04.06

[Java] 백준 풀기 9251 - LCS

자바 백준 9251번 골드 5 https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net 문제 보기 분류: 다이나믹 프로그래밍, 문자열 코드 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 두 문자열 입력 String str1 =..

공부하기/백준 2024.04.05

[Java] 백준 풀기 4358 - 생태학

자바 백준 4358번 실버 2 https://www.acmicpc.net/problem/4358 4358번: 생태학 프로그램은 여러 줄로 이루어져 있으며, 한 줄에 하나의 나무 종 이름이 주어진다. 어떤 종 이름도 30글자를 넘지 않으며, 입력에는 최대 10,000개의 종이 주어지고 최대 1,000,000그루의 나무가 주어 www.acmicpc.net 문제 보기 분류: 자료 구조, 문자열, 해시를 사용한 집합과 맵, 트리를 사용한 집합과 맵 코드 풀이 import java.util.Scanner; import java.util.Map; import java.util.TreeMap; public class Main { public static void main(String[] args) { Scanner ..

공부하기/백준 2024.04.04

[Java] 백준 풀기 1094 - 막대기

자바 백준 1094번 실버 5 https://www.acmicpc.net/problem/1094 1094번: 막대기 지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대 www.acmicpc.net 문제 보기 분류: 수학, 비트마스킹 코드 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // X를 입력 int X = sc.nextInt(); // countBars 함수를 호출하여 막..

공부하기/백준 2024.04.02

[Java] ListIterator: 리스트 순회를 위한 양방향 인터페이스

ListIterator 는 List 컬렉션을 순회할 때 하용하는 인터페이스이다. ListIterator 를 사용하면 요소의 추가, 삭제, 이전 요소 및 다음 요소에 접근하는 등의 작업을 할 수 있다. ListIterator 주요 메서드 add(E e): 해당 리스트에 전달된 요소를 현재 커서 위치에 추가한다. hasNext(): 해당 리스트를 순방향으로 순회할 때 다음 요소가 있는지 확인한다. 다음 요소가 있으면 true를 반환한다. hasPrevious(): 해당 리스트를 역방향으로 순회할 때 이전 요소가 있는지 확인한다. 이전 요소가 있으면 true를 반환한다. next(): 리스트의 다음 요소를 반환하고, 커서의 위치를 순방향으로 이동한다. nextIndex(): next() 메소드를 호출하면 반환..

알아가기/Java 2024.04.01

[Java] 백준 풀기 5397 - 키로거

자바 백준 5397번 실버 2 https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 문제 보기 분류: 자료 구조, 스택, 연결 리스트 코드 풀이 import java.util.Scanner; import java.util.LinkedList; import java.util.ListIterator; public class Main { public static void main(String[] args) { Scanner sc = new Scan..

공부하기/백준 2024.04.01

[Java] 백준 풀기 20044 - Project Teams

자바 백준 20044번 실버 4 https://www.acmicpc.net/problem/20044 20044번: Project Teams 입력은 표준입력을 사용한다. 입력의 첫 번째 행에는 팀 수를 나타내는 양의 정수 n(1 ≤ n ≤ 5,000)이 주어진다. 그 다음 행에 학생 si 의 코딩 역량 w(si)를 나타내는 2n개의 양의 정수가 공백으로 www.acmicpc.net 문제 보기 분류: 그리디 알고리즘, 정렬 코드 풀이 import java.util.Scanner; import java.util.Arrays; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 팀 수..

공부하기/백준 2024.03.31