일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 28278 스택 2
- 자바 1003
- 2164 자바
- 백준 10866 자바
- 파이썬
- 그리디
- 2798 자바
- 백준 28278 자바
- 자바
- IAM Identity Center
- 데보션영 3기
- 티움투어
- 자바 10866
- 10807 자바
- 코딩테스트
- 자바 2164
- 자바 28278
- 1764 자바
- dfs
- 2346 풍선 터뜨리기
- 10813 자바
- BFS
- 백준
- 백준 2346 자바
- 10810 자바
- 백준 1764 자바
- 2748 자바
- IAM 사용자
- 자바 2346
- 1010 자바
- Today
- Total
목록전체 글 (141)
자두의 데브로그
https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 미로 게임이랑 거의 유사하지만 만약 가는 길이 없으면 가장 마지막에 -1로 출력해야되는 부분이 달랐다. 최단 거리를 구하는 문제이기 때문에 bfs를 구현해서 풀면 됐었는데, bfs의 for문 내에서 queue에 값을 추가해야하는 것을 까먹고 재귀로 넣어서 첫 번째 풀이는 틀렸었다. 탐색을 시작하는 지점은 (0, 0) 좌표이기 때문에 애초에 bfs(0, 0)을 실행하면 된다. visited[0][0]은 ..
https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 이 문제를 왜 혼자 못풀었을까 .... 문제 푼 방법 설명해보겠다.. 일단 visited를 하나 선언함으로써 연결된 컴퓨터 사이의 관게를 파악할 수 있도록 한다. 이후로 visited를 차례로 돌면서 네트워크가 다른 네트워크랑 연결되어있는지 확인하고, 만약 visited가 false면 일단 네트워크의 개수를 하나 증가시킨다. (연결되어있다면 dfs 내에서 visited에 해당하는 값을 true로 바꿀..
https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 내가 작성했던 블로그 보니까 과거에 파이썬으로 코테 준비했을 때의 내용만 있길래 자바로 다시 풀고 올린다.거의 다 맞췄는데 무한루프 돌길래 이상해서 찾아보니 진짜 이상한 짓을 하고 있었다.어차피 depth가 인덱스 역할을 해주고 있는 건데 for문으로 dfs 함수 안에서 또 numbers[i]번째의 값과 더하거나 빼는 방식을 추가해버려서 처음에는 틀렸었다. 그리고 return의 위치!!!! retur..

https://www.acmicpc.net/problem/5568 마찬가지로 DFS를 활용한 완전탐색로 푸는 문제였다. 익숙해졌다고 생각했는데 조금만 응용해서 나오면 못 푸는 게 현타가 오지만..^^ 다시 풀어보다보면 감을 잡겠지.. 이 문제는 visited를 확인해줬어야 했는데, dfs에 처음에는 0과 빈 문자열을 넣어주고, depth를 늘려서 결국 k의 값과 같은 경우에 대해서만 arrayList에 add 하면 된다. 하지만 이때 arrayList에 이미 있는 수에 대해서는 넣으면 안되기 때문에 contains로 이미 존재하는 값에 대해서 비교해준다. 문자열로 입력 받는 이유는 순서를 바꿔서 단순히 숫자를 문자열처럼 합치는 작업이기 때문에 숫자로 하면 서로 더해진다는 문제가 생긴다. 그리고 for문을..

https://www.acmicpc.net/problem/18511 DFS로 완전탐색 하는 문제를 너무 못하길래 무려 실버 5인 문제를 풀어봤는데 역시나.. 엣지 케이스에 싹 다 걸려서 계속 틀렸다. 사실 더 이상 무슨 반례가 있는지 모르겠어서 결국 구글링행.... 내일 다시 풀어보자 ^^ dfs 함수를 만들어서 내부에서 먼저 인수로 들어온 값이랑 n의 값을 비교해서 만약 인수 값이 더 크다면 그대로 return하고, 아니라면 answer의 값과 인수 값을 비교해서 answer의 값이 더 작다면 인수 값을 answer에 저장한다. 그리고 반복문을 돌리며, k 즉, 저장된 값의 개수만큼 돌리되, 큰 수부터 계산할 수 있도록 뒤에서부터 arr의 값을 가지고 와서 인수와 10을 곱한 값을 arr의 값과 더하고..
https://www.acmicpc.net/problem/7562 드디어 DFS, BFS 문제를 풀이 없이 혼자 풀어봤다 !!!!! 최근 금융권 준비하면서 완전탐색, 문자열, DFS/BFS 위주로 문제 풀고 있는데 DFS/BFS가 문제에 나와도 잘 못푸는 걸 깨닫고 스스로 화났던 과거를 청산하기 위하여... 열심히 풀었던 문제 또 풀어보고 풀어보고를 반복하다보니 드디어 조금씩 감을 익히고 있는 것 같다. 사실 근데 문제 자체는 크게 어렵지 않다. 나이트가 이동할 수 있는 방향은 총 8개로, 기존에 미로 탐색 같은 문제에서 갈 수 있는 방향을 상, 하, 좌, 우 4군데로 지정해서 했던 것처럼 이번에는 8군데로 지정해서 BFS로 문제를 풀면 된다. 원래 DFS/BFS 문제를 풀 때는 graph랑 visit..
https://school.programmers.co.kr/learn/courses/30/lessons/276035 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 처음에는 이 문제가 왜 join인지 몰라서 어떻게 푸는지 조금 헤맸다. 물론 문제 유형을 보고 풀면 안되긴 하지만.. 무엇보다 id, email, first_name, last_name 이 developers에만 있었기 때문에 더더욱 서브쿼리로 풀면 되지 않겠나 싶었는데 아니었다. 도대체 code랑 skill_code 비교하는 부분을 어디에 넣어야할지 몰라서 결국 구글링을 통해 문제를 해결했는데 답..
코딩테스트를 보다가 자꾸 이 부분에서 걸려서 ^^ 까먹기 전에 정리해두기! 만약 1이 char로 들어왔고 이를 int로 변환할 때 자동/강제 형변환으로 타입을 변환하면 아래와 같은 결과가 나온다.char c = '1';int n = (int)c;System.out.println(n); // 결과: 49 나의 경우에는 '5'를 형변환했는데 계속 53이 나와서 상당히 곤란했었다. 위와 같은 이유였겠지..? 그래서 나는 굳이 String으로 char을 바꾸고 이걸 Integer로 바꾸는 상당히 귀찮은 작업을 했다. 이렇게 해도 맞을지는 모르겠지만.. 그치만 더 좋은 방법을 발견했기 때문에 아래 방법을 소개해보려고 한다. 1. '0' 빼기위에서 49가 나온 이유는 아스키 코드 값이 나오기 때문이니까 int로 변..
https://school.programmers.co.kr/learn/courses/30/lessons/157339 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 조인..... 이거 뭐지... 너무 어렵다..일단 이 문제에서 관건은 date에 대해서 어떻게 비교하느냐였는데end_date가 11-01 보다 크거나 같고start_date가 11-30보다 작거나 같으면 대여할 수 없기 때문에 이 조건에 해당하는 id는 제외해주면 됐다.이거 이외에 냅다 where 안에 모든 조건을 다 때려 넣었었는데 car_id에 대해서 먼저 걸러주는 작업을 하기 위해서 서브쿼리를..