일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- FLEX5
- database연결
- Java
- 파이도 환불
- 언마운트
- 데이터의 무결성
- BC렌트
- 백준알고리즘
- 벤쿠버 렌트
- 자바
- 벤쿠버렌트
- Linux
- 벤쿠버집구하기
- IntelliJ
- QA엔지니어
- 레노보노트북
- codility
- 외래키설정
- 설탕문제
- FIDO 환불
- FK 설정
- 엔테크서비스
- binaray_gap
- 부산입국
- 프로그래머스
- Lesson3
- 1463번
- 캐나다워홀
- Lesson2
- 리눅스
- Today
- Total
목록꼬꼬마 개발자 노트/Coding Problems (95)
대충이라도 하자
*** BFS? Recursive 방식 ***동일한 것을 반복하는 것은 잘 생각하는데 깊게 들어가면서 계속 반복하는 건 아이디어를 잘 생각해내지 못하는 경향이 있는 듯... + Node나 TreeNode에 대한 이해도가 부족해서 그런 거 같기도 하다. *** mergeTrees라는 함수 자체를 recursive하게 한다. 두 개 다 null일 경우에는 null로 비워두고 둘 중 하나가 null이면 상대방으로 대체 마지막에는 새로운 treeNode를 생성하는데 root1과 root2의 합, 그리고 왼쪽과 오른쪽은 함수를 다시 타고 들어가도록 세팅하면 끝!
*** dfs Medium 문제 *** 원래 사용하는 dfs를 사용하자니 반복으로 계산 혹은 누락될 위험이 있어 아래와 같은 방법으로 해야 함 *** 총 섬의 갯수는 위의 방식 사용 가능, but 섬이 몇 개의 space로 이루어져있나 같은 문제는 다르게 접근해야 함 *** 결국, return에서 dfs를 타고 갈 수 있도록 프로그래밍
*** DFS로 푸는 문제 *** before 숫자와 newColor 숫자가 동일한 경우가 있기 때문에 dfs 맨 처음 return 조건에 image[sr][sc] != before 과 image[sr][sc] == newColor 두 개를 함께 주어줘야 한다.
*** 이 방법말고 수학적 지식을 이용한 방법도 있는 듯하다. "연속된 자연수의 합으로 표현하는 방법의 수는 주어진 수의 홀수 약수의 개수와 같다라는 정수론 "
*** 먼저, 서로 다른 세 수를 더해서 배열에 넣기 삼중 반복문을 돌려도 된다고 생각하지 않았는데 숫자의 개수가 50개 이하이기 때문에 상관없는 듯하다. 하지만!! 50개 이상일 경우도 생각해봐야 한다. r은 갯수이다. 맨 처음 보면 갯수를 3개로 초기화 해 놓고, 넘어갈 때마다 하나씩 빼주는 것 visited[i]가 true가 되어 있는 것의 합을 구하면 된다. *** 리스트에 들어 있는 수를 다 확인해보며, 소수인지 확인하고 소수가 맞으면 카운트하기 소수가 맞는지 확인할 때는, 2부터 확인해야 할 것을 명심해야 한다. 또한 i*i