코딩/알고리즘
-
프로그래머스 타켓넘버 java코딩/알고리즘 2019. 9. 2. 21:59
알고리즘은 정말 안하면 손쉽게 녹쓰는것같다 그래도 아직 하는법은 안까먹은거같은데... dfs로 풀이했다 손으로 일일히 그려가면서 풀면 이해가 쉽다 class Solution { static int ANSWER = 0 ; public int solution(int[] numbers, int target) { dfs(numbers,target,0,0); return ANSWER; } public void dfs(int[] numbers, int target, int depth, int sum ){ if(depth == numbers.length) { //System.out.println(sum); if(target == sum ) { ANSWER += 1; } return; } dfs(numbers, tar..
-
[ 백준 ][ 자바 ][ 3055 ] 탈출코딩/알고리즘 2019. 6. 19. 21:38
이 문제를 8달전에 풀었었다니.. 사실 어떻게 보면 그렇게 실력차이가 많이 안나보이지만 예전 코드를 보고 지금 코드를 봤을때 확실하게 깔끔해진게 눈에 띄긴한다.. 거기다 이런 bfs 문제는 익숙해서 그런지 빠르게 풀고 원큐에 맞췄다 여튼! 이문제는 물과 , 비버 두개의 큐를 이용하면 되는 bfs 문제인데 문제 조건중에 물이 이동할 부분은 비버가 못간다고 한다 그렇다면 즉... 물을 먼저 이동시키면 된다는 이야기... 물을 먼저 이동시키고 그다음에 비버를 이동하면 풀리는 문제다 package back; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Linke..
-
[ 백준 ] [ 자바 ][ 1931 ] 회의실 배정코딩/알고리즘 2019. 6. 18. 23:25
이 문제는 코드는 간단하나 그 원리가 제일 중요한데 원리에서 도출되는 정렬순서, 방법 ( comparator ) 주 쟁점인듯 하다 . 그리디 알고리즘에서는 정당성을 고려하는데 이 부분에 대해서 공부가 필요할듯 싶다 ( 귀류법 ) package back; 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.StringTokenizer; class Bis{ int start; int end; Bis(int sta..
-
[ 백준 ] [ 자바 ][ 숨박꼭질] 1697코딩/알고리즘 2019. 6. 16. 19:36
런타임 에러가 자꾸 나서 뭔가했는데 if 문에서 맨 좌측에 visited배열을 참조 하게끔 선언해놓아서 범위 이상값을 참조하게 되는 경우도 있어 런타임 에러가 뜨는 것이였다. 처음에는 dfs로 진행하다가 스택오버플로우를 겪게 되서 bfs로 진행했는데 과거에 작성했던 코드보다는 깔끔해진것같다. package back; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; class Position{ int position; Position(int position){ this.position = position; } } public class Main_backjoon_1697_숨박꼭질_retry { static int N..
-
[백준][자바][17144] 미세먼지 안녕!코딩/알고리즘 2019. 4. 21. 22:48
아 머리아프다... 이 문제는 알고보면 풀란대로 풀면 끝나는 아주 간단한 문제인데. 선행학습이 안되어있으면 좀 삽질을 거듭할수 있다. 중점적으로 볼사항은 일단 퍼트릴떄 초기 맵을 건드리면 안되는 문제와 ( 그래서 COPYMAP 을 사용함) 공기 청정기 위 아래의 바람에 따라서 먼지의 이동만 잘 구현 해놓으면 풀리는 문제이다 큐를 써서 하려고 했는데 위와 같은 문제에 봉착해서 다른 분들 코드를 참고해서 포문 2개로 풀었는데 꼭큐를 쓸꺼야 하는 그런 강박관념은 없어도 될것같다. 아 그리고 보니...안쓰는 코드 정리를 안했네.... 곧 카페가 문을 닫아서 나중에 수정해야겠다.ㅠㅠ import java.io.BufferedReader; import java.io.IOException; import java.io..
-
5658. [모의 SW 역량테스트] 보물상자 비밀번호코딩/알고리즘 2019. 4. 12. 23:04
솔직히 다른사람코드보다 훨씬 어렵게 풀은거같다... ... 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.Deque; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.StringTokenizer; public class Solution ..
-
[ 백준 ][ 자바][ 16234 ] 인구이동코딩/알고리즘 2019. 4. 5. 22:21
어라 티스토리 에디터가 변경됬다.. 오 글씨체 이뻐이뻐 깔끔한게 이쁘다. 나중에 내 블로그 만들때 좀 참고해야겠다. 오랜만에 포스팅... 그말인 즉슨...나태했다는 의미다. 제일 중요한때 인데...뭐하는지... 여튼..이 문제는 조금 해맸다 예제만 보고 진행했다가 값이 안나와서 뭔가 싶었는데 연합은 딱 하나가 아닐수도 있다는것...고립되어있는 연합을 생각해줘야한다. 이거떄문에 해맸는데 나머지는 그냥 dfs다. 지금까지 본 삼성문제중엔 가장 쉬운거같다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Linke..
-
[ 백준 [[ 자바 ][ 6603 ] 로또코딩/알고리즘 2019. 3. 23. 23:53
예전에 봤던 dfs 문제를 한번 다시 찾아 풀어봤는데접근 방법은 알겠는데 정답이 다르게 나와서 다른 분들 코드를 참조했다여러가지 방법중에 나한테 제일 직관적인인 방법이였다오름차순으로 커져가고 중복이 없어야하니 +1 해준값을 넣어주면 된다그려보면 이해가 간다. 여튼간에 result 값을 1로 했다가 다시 0으로 하는게 맘에 든다. ㅎpackage back; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main_backjoon_6603_로또 { static int[] temp; static int[] ar..