일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 피보나치
- 정렬
- 너비우선탐색
- IntelliJ
- db
- Greedy
- DFS
- Database
- Spring
- 탐욕법
- springboot
- 이펙티브자바
- 코테
- join
- select
- 알고리즘
- SQL
- Effective Java
- BFS
- mariaDB
- 그리디알고리즘
- 깊이우선탐색
- 우선순위큐
- 백준
- java
- 다이나믹프로그래밍
- 프로그래머스
- mybatis
- 데이터베이스
- DP
- Today
- Total
목록java (150)
땀두 블로그

간단한 BFS문제이다. 처음 탐색 이후 해당 배열을 clone해주고, R이나 G를 하나의 값으로 합쳐준 다음 탐색을 해주면 된다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; class Node10026 { int x; int y; Node10026(int x, int y) { this.x = x; this.y = y; } } public class p10026 { public static boolean[][] visited; public static int a; public static i..

간단한 bfs문제이다. 4가지 경우를 방문 유무를 판단하여서 각각의 과정을 행하면 된다. 이 부분에서 주의해야할 것은 1. S 연산을 할 때, n == 0 일 때 9999로 넘어가도록. 2. 123을 L연산 수행시 231이 아니라, 1230이 되도록 3. 123을 R연산 수행시 312가 아니라 3012가 되도록 4. 방문 체크 배열을 혹시 전역으로 설정했는지 이 방법들을 제대로 체크해야 한다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokeniz..

문제 해결을 위해서 arraylist를 이용하여 list를 만들고 문제를 해결하였는데 원하는 테스트케이스의 답안은 맞았지만 시간초과가 났다. 그래서 시간을 줄이기 위해 print문을 stringbuilder에 저장하여 마지막 한 번에 출력하도록 했고, Collections.reverse를 이용하면 n^2의 탐색을 계속 해주어야 하기 때문에 시작하는 인덱스를 앞에서 할지 뒤에서 할 지 결정한는 flag값을 선언하였다. 또한 ArrayList를 for문 내부에서 계속 재 선언할 경우 메모리를 많이 잡아먹기 때문에 초기에 선언해주고 clear함수를 이용하여 비워주는 식으로 문제를 해결하였다. import java.io.BufferedReader; import java.io.IOException; import ..

브루트포스를 이용한 완전탐색 문제였다. 만약에 고장난 버튼이 존재하는 타겟 채널의 경우 카운트를 못하게 하였고, 그렇지 않은 경우는 타겟 채널까지의 순수 +-값과 타겟채널을 누르는 횟수 + 타겟채널까지의 +-를 눌러야 하는 횟수 중 작은 값을 구하도록 하여 문제를 해결하였다. 이 문제에서 간과했던 부분은 고장난 버튼이 0개일 때는 고장난 버튼 값을 입력받는 부분 없이 바로 넘어갔어야 했는데 이 부분을 분기처리 해주지 않아 NullpointerException이 계속해서 나왔다. 이런 부분은 문제 조건을 잘 확인하여 해결해야 할 것 같다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; i..

BFS를 이용해서 탐색하는 문제이다. 사다리와 뱀을 다르게 생각하지 말고, 같은 배열에 key, value조합이라고 생각하면 문제 해결에 도움이 된다. 이미 지나간 부분이나 100을 넘긴 숫자가 들어오면 넘어가고, 그렇지 않은 경우 count를 증가시킨다. 그렇게 해서 주사위 눈이 나올 수 있는 1~6까지의 값을 더해주면서 사다리, 뱀 유무를 판단하여 이동한다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class p..