2024/04 25

[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