백준 23.10.19 ~ 23.11.20 코딩 테스트 1달간 회고록
코딩테스트/백준(Baekjoon) 2023. 11. 20. 23:19

23.10.19일에 코딩 테스트를 시작하여 골드4를 찍는데 한 달 넘짓 걸렸다. 이 한 달이라는 기간 동안 꾸준히 풀었는데 코딩 테스트가 정말 많이 늘었다. BFS, DFS, 소트, 슬라이딩 윈도우, 이분 탐색, 해시, 우선순위 큐, 그리디 등등.. 사실 아직 부족한 부분도 많다. DFS와 백트래킹 문제는 아직 어렵게 느껴진다. 나는 이전에 4개월간 코딩 테스트를 C#으로 푼 적이 있다. 그때는 4개월 동안 했지만 수학, String에만 집중적으로 되어있었다. 이를 보니 이때 코딩 테스트를 위해서 한 건지 티어를 올리기 위해서 코딩 테스트를 한 건지 확실하게 알 수 있었다. 물론 구현/ 수학 문제가 많기 때문에 어쩔 수 없이 Math, Implementation, String에 관한 그래프가 높긴 하지만..

[DFS, BFS]를 공부하다.
코딩테스트/백준(Baekjoon) 2023. 11. 14. 00:44

https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 백준 2178번을 풀면서 BFS에 대해 자세히 알게 되었다. 사실 나는 알고리즘 스터디를 하면서 BFS, DFS에 대해 막연한 불안감을 가지고 있었다. 하지만 실제로 문제를 접해보니까 생각만 잘하면 어렵지 않다는 걸 알 수 있었다.. BFS와 DFS를 모를 때 이 문제를 보았던 심정은 다음과 같다. 먼저 0,0부터 시작해 각 배열의 길이를 구하고 Math.min을 통해서 마지막 최솟값을 산출하는 계산을 했다. 물론 상 하 좌 우..

[수학] 조합 공식 / 백준 10986
코딩테스트/백준(Baekjoon) 2023. 10. 30. 23:29

https://www.acmicpc.net/problem/10986 10986번: 나머지 합 수 N개 A1, A2, ..., AN이 주어진다. 이때, 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 구하는 프로그램을 작성하시오. 즉, Ai + ... + Aj (i ≤ j) 의 합이 M으로 나누어 떨어지는 (i, j) www.acmicpc.net 백준 10986번을 풀면서 새롭게 배운 공식을 써보려고 한다. 일단 이전에 합 배열 문제에서 구간합을 구하는 방법을 배웠다. 나머지 합 문제에서 콤비네이션 공식이라는걸 쓰는데 매우 신기하고 다음에도 유용하게 쓸 것 같아서 작성하려고 한다. nCr 서로 다른 n개 중에서 겹치지 않도록 r개를 선택하는 방법의 수 예를들어 20명중 2명을 뽑는다고 하면 ..