본문 바로가기

알고리즘/백준22

99클럽 코테 스터디 15일차 TIL (13417번: 카드 문자열) 문제https://www.acmicpc.net/problem/13417학습 키워드그리디 풀이 및 코드주어진 문자열의 맨 앞부터 문자를 차례대로 뽑으면서 빈 문자열부터 시작해, 만들고 있는 문자열의 왼쪽에 놓을지 혹은 오른쪽 끝에 놓을지 결정하는 문제이다. 각 문자를 선택할 때마다 왼쪽 끝에 놓았을 때 완성되는 문자열과 오른쪽 끝에 놓았을 때 문자열을 비교해가면서 문자열 순서가 빠른 문자열로 완성해나가면 된다.import java.util.*;import java.io.*;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStre.. 2024. 11. 11.
99클럽 코테 스터디 14일차 TIL (14916번: 거스름돈) 문제https://www.acmicpc.net/problem/14916학습 키워드그리디 시도(성공) 5원으로  교환할 수 있는 최대값부터 시작해서 5원으로 교환하고 남은 돈을 2원으로 전부 교환할 수 있는지 판단하기 풀이 및 코드import java.util.*;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int answer = 0; for (int fiveWon = n / 5; fiveWon >= 0; fiveWon--) { int remainderN = n - (5 * fiveWon); if (remainderN % 2.. 2024. 11. 11.
99클럽 코테 스터디 12일차 TIL (7569번: 토마토) 문제https://www.acmicpc.net/problem/7569 학습 키워드BFS 시도(시간 초과) 완전 탐색day를 1부터 H*N*M 까지 탐색하면서 모든 배열을 순회하면서 토마토를 익히고, 익은 개수를 센다.첫 째날부터 익은 토마토가 없다면 0을 반환한다.익은 토마토가 없다면 날짜를 출력한다. 이때, 배열에 0이 포함되어 있다면 -1을 출력하고, 아니라면 날짜를 출력한다.(성공) 익은 토마토를 기준으로 BFS값을 입력 받을 때, Queue에 익은 토마토의 위치를 추가한다. 이때, 현재 토마토가 익은 날짜가 언제인지 알 수 있는 값도 같이 추가한다.BFS 방식으로 Queue의 맨 앞 값(poll)을 빼내주면서하면서 익은 토마토 주변('앞', '뒤', '상', '하', '좌', '우')에 있는 익지.. 2024. 11. 8.
99클럽 코테 스터디 11일차 TIL (25195번: Yes or yes) 문제https://www.acmicpc.net/problem/25195학습키워드DFS 풀이 및 코드DFS를 통해 깊게 들어가면서 곰곰이를 만나는지 확인하는 방식이다.정답의 초기값을 "Yes"로 설정한 다음, 탐색 도중 곰곰이를 만난 경우 return을 한다.만약 더 이상 갈 곳이 없는데 곰곰이를 만나지 않았다면 (meet == false)라면 정답을 "yes"로 변경해준다import java.util.*;import java.io.*;public class Main { private static String answer = "Yes"; public static void main(String[] args) throws IOException { BufferedReader br = new.. 2024. 11. 7.