본문 바로가기
반응형

백준알고리즘47

알고리즘 백트래킹(backtracking) 백트래킹 : 해를 찾아가는 도중, 지금의 경로가 해가 될 것 같지 않으면 그 경로를 더이상 가지 않고 되돌아가는 알고리즘이다. 현재 노드가 조건을 만족하는지 확인 -> 만족한다면 자식노드로 가서 조건 만족하는지 확인 -> 자식노드가 만족하지 않으면 다른 자식노드 확인 -> 모든 자식노드가 조건 만족하지 않으면 다시 부모노드로 돌아간다. 참고한 블로그 chanhuiseok.github.io/posts/algo-23/ 2021. 4. 8.
백준알고리즘:p1181 단어정렬 분류: 정렬 ▶문제 즉, 길이가 짧은게 먼저 나오도록 하고 길이가 같다면 알파벳순으로 정렬해라. 중복은 제거해라. ▶코드 //백준알고리즘 제출시 클래스 이름은 Main으로 바꿔야 됨 package sort; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashSet; public class p1181 { public static void main(String[] args) throws IOExcepti.. 2021. 4. 7.
백준알고리즘:p11650, p11651 좌표 정렬하기 분류: 정렬 ▶문제 comparator를 이용해서 풀었다. comparator를 쓰려면 compare 메소드를 오버라이드 해줘야 한다. -comparator 인터페이스를 쓰는 경우 : 정렬 대상 클래스의 코드를 직접 수정할 수 없는 경우 -또는, 객체에 이미 존재하고 있는 정렬 기준과 다른 정렬 기준으로 정렬할 경우 ▶코드 //백준알고리즘 제출시 클래스 이름은 Main으로 바꿔야 됨 package sort; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Comparator; import java.util.Stri.. 2021. 4. 6.
백준알고리즘:p1427 소트인사이드 분류: 정렬 ▶문제 ▶코드1 아스키코드를 사용해서 풀었다. 크기가 10인 cnt배열을 만들고 s.charAt()으로 char-48인 인덱스에 +1 ( 문자 0~9 는 아스키코드값 48~59 ) 그리고 cnt배열을 거꾸로 돌면서 카운트값만큼 인덱스값을 출력,, //백준알고리즘 제출시 클래스 이름은 Main으로 바꿔야 됨 package sort; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class p1427 { //소트인사이드 public static void main(String[] args) { try.. 2021. 4. 6.
백준알고리즘:p2108 통계학 분류: 정렬 2021.03.20 - [백준알고리즘] - 백준알고리즘:p2108 통계학 전에 런타임 에러로 풀지 못했었는데 다시 풀어보았다. 이전 코드 : 카운트 정렬을 통해 한번에 해결하려고 했다. 그런데 너무 복잡했고 런타임 에러도 있었다. 또 평균에서 자꾸 문제가 있었는데 sum/n 할때 sum을 double 실수형으로 바꿔주고 나눠야 했다. 그래야 소숫점에서 반올림을 하기 때문,, 그래서 -2가 나와야 하는데 자꾸 -1이 나와 대체 뭘까 했는데 이걸 생각지 못했다니ㅜㅜ 까먹지 말아야지; 새 코드 : 중간값, 최솟값과 최댓값의 차이는 int[]인 arr배열을 sort하여 해결했다. Arrays.sort(arr) 평균은 sum을 n으로 나눴다. 최빈값은 카운트된 int[] cnt배열과, ArrayLis.. 2021. 4. 5.
백준알고리즘:p1002 터렛 분류: 기본수학2 ▶문제 ▶코드 //백준알고리즘 제출시 클래스 이름은 Main으로 바꿔야 됨 package math_2; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class p1002 { //터렛 public static void main(String[] args) { //입력 : x1, y1, r1, x2, y2, r2 try(BufferedReader br = new BufferedReader(new InputStreamReader(Sys.. 2021. 4. 4.
반응형