반응형

분할정복거듭제곱 2

[BOJ] 백준 17401. 일하는 세포 (Platinum V)

클래스 문제에 있길래 풀어보았다. 문제는 아래와 같다. https://www.acmicpc.net/problem/17401 17401번: 일하는 세포 출력은 N개의 줄로 구성되며, i 번째 줄에는 N개의 정수 xi1, xi2, ..., xiN를 공백으로 구분하여 출력해야 한다. xij는 0초 때 거점 i 에서 출발하여 정확히 D초 때 거점 j에 위치하게 되는 경로의 수를 1 www.acmicpc.net 의식의 흐름 및 해설 우선 D가 굉장히 크다. 어지간한 그래프 탐색 (dfs, bfs, floyd)로는 시간복잡도 내에 절대 불가능해보인다. 그런데, 이렇게 이동 경우의 수를 구하는 문제, 어디서 많이 보지 않았나? 바로 본대산책2에서 본 듯하다. https://www.acmicpc.net/problem/..

PS/BOJ 2021.10.17

[BOJ] 백준 15824. 너 봄에는 캡사이신이 맛있단다 (Gold I)

아이디어에서 배울 점이 있었던 문제이다. https://www.acmicpc.net/problem/15824 15824번: 너 봄에는 캡사이신이 맛있단다 한 줄에 모든 조합의 주헌고통지수 합을 1,000,000,007로 나눈 나머지를 출력한다. www.acmicpc.net Small을 해결하기 위한 상한 시간복잡도는 O(N^2) Large를 해결하기 위한 상한 시간복잡도는 O(NlgN)임을 알 수 있다. 의식의 흐름 및 해설 될 수 있는 모든 조합의 [최댓값과 최솟값의 차]의 합을 구하는 문제이다. 처음에 이걸 O(N^2) 이상의 알고리즘으로 해결하는 방법밖에 떠오르지 않아 꽤 고민을 했다. 그런데 생각해보니 결국 모든 조합의 [최댓값과 최솟값의 차]의 합이면 모든 경우의 최댓값 - 모든 경우의 최솟값을..

PS/BOJ 2021.06.09
반응형