분류 전체보기 289

[백준] 1309번 동물원 #Java

내가 푼 풀이가 틀렸다고 나왔길래 정답을 찾아서 비교해보는 과정을 거쳤다. 괄호를 붙이지 않아 우선순위 적용이 잘못 되었었다. - 수정 전 dp2[0][i] = dp2[0][i-1]+dp2[1][i-1]+dp2[2][i-1] % 9901; dp2[1][i] = dp2[0][i-1]+dp2[2][i-1] % 9901; dp2[2][i] = dp2[0][i-1]+dp2[1][i-1] % 9901; - 수정 후 dp2[0][i] = (dp2[0][i-1]+dp2[1][i-1]+dp2[2][i-1]) % 9901; dp2[1][i] = (dp2[0][i-1]+dp2[2][i-1]) % 9901; dp2[2][i] = (dp2[0][i-1]+dp2[1][i-1]) % 9901; - 풀이 코드 import java..

알고리즘/DP 2022.05.30

[백준] 7562번 나이트의 이동 #Java

bfs 간단한 문제 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; class Point{ int x,y; public Point(int x,int y){ this.x = x; this.y = y; } } public class Main { static int dx[] = {-1,-2,-2,-1,1,2,2,1}; static int dy[] = {-2,-1,1,2,2,1,-1,-2}; static int [][] arr; static ..

[백준] 11286번 절대값 힙 #Java

클래스 만들어줘서 풀이했다. compareTo만 알면 된다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.PriorityQueue; class Point implements Comparable{ int n; public Point(int n){ this.n = n; } @Override public int compareTo(Point o) { if(Math.abs(this.n) == Math.abs(o.n)){ return this.n - o.n; } return Math.abs(this.n) - Math.abs(o.n); } } public class ..

[백준] 7662번 이중 우선순위 큐 #Java

TreeMap 이라는 자료구조를 처음 알게 되었다. 역쉬 많이 풀어봐야 안다! PriorityQueue 와 유사한 맵이다. firstKey, lastKey로 작고 큰걸 뺄 수 있다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; import java.util.TreeMap; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(Sy..

알고리즘/해시 2022.05.27

[백준] 17413번 단어 뒤집기 2 #Java

조건을 미리 생각하고 푸는 연습 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String s = br.readLine(); boolean check = true; StringBuilder sb = new StringBuilder(); StringBuilder answer = new StringBuilder(); f..