boj 2696 : Running Median https://www.acmicpc.net/problem/2696 총 3가지 방법으로 해보았다. 첫번째 : 가장 단순한 방법으로 sorting + 중간값 출력...n * n * logn역시나 시간초과 ㅎㅎ 두번째 :selection 알고리즘.예전에 코드를 직접 짜보았었던게 생각나서 해보았다.첫번째 방법이 n * n * logn 이라면 이방법은 n * n만에 가능.직접 짜는것보다 nth_element를 이용..ㅎㅎㅎ 44ms로 AC 세번째 : left, right 2개의 힙 이용.a[i]가 mid보다 클 경우 right에 push, 작거나 같은경우 left에 push.(작거나 같을 경우나 크거나 같을 경우는 따로 고려해주지 않아도 된다.)홀수번째마다 3가지 경..
boj 2698 : Adjacent Bit Counts https://www.acmicpc.net/problem/2698 생각한 시간은 길었지만 점화식은 간단하게 나온다. 1. A[n][k][e] : e로 끝나고 k개의 인접비트를 가지는 길이 n인 string의 수2. A[1][0][0] = 1, A[1][0][1] = 13-1. A[n][k][0] = A[n - 1][k][1] + A[n - 1][k][0]3-2. A[n][k][1] = A[n - 1][k][0] + A[n - 1][k - 1][1]
boj 2487 : 섞기 수열 https://www.acmicpc.net/problem/2487 각 cycle 길이의 lcm을 출력해주면 된다.예를들어 섞기수열이 3 2 5 6 1 4인 경우cycle(1) = 3 (1->3->5->1),cycle(2) = 1 (2->2)cycle(3) = 3cycle(4) = 2 (4->6->4)cycle(5) = 3cycle(6) = 2이므로 lcm(cycle(1),cycle(2), ..., cycle(6))인 6을 출력해주면 정답.각각 숫자에 대한 cycle 수를 구하는 것 보단 1의 cycle을 구하고 cycle의 경로에 있는 1,3,5의 cycle 수도 모두 같은 값으로 해주면 훨씬 빠르다.
boj 10835 : 카드게임 이것도 간단한 DP문제. a : 왼쪽카드뭉치 수열b : 오른쪽 카드뭉치 수열f(i, j) : 왼쪽 i번째, 오른쪽 j번째 카드일 때의 앞으로 얻을 수 있는 최대값이렇게 두면. 1. f(i, j) = max( f(i + 1, j + 1), f(i + 1, j), f(i, j + 1) + b[j])1.1 f(i + 1, j + 1) : 카드를 둘다 버릴 때1.2 f(i + 1, j) : 왼쪽 뭉치만 버릴 때1.3 f(i, j + 1) + b[j] : 오른쪽 뭉치만 버릴 때(이때는 왼쪽 카드보다 오른쪽 카드 값이 작아야함)
boj 2302 : 극장 좌석 쉬운 DP문제. 쉬운 DP는 그만 풀어도 되는데 손이 자꾸 가네... f(i) : vip가 없을 때 i번까지 자리를 바꿀 수 있는 경우의 수이렇게 두면1. i = 2 일 때 : f(i) = f(i - 1) + f(i - 2)2.1 f(i - 1) : i가 가만히 있는 경우2.2 f(i - 2) : i가 자리를 바꾸는 경우 vector에 0, vip1, vip2, ... vipM, N + 1을 담은 후결과값은 f(N + 1 - vipM) * ... f(vip2 - vip1) * f(vip1) 을 출력.
- Total
- Today
- Yesterday
- 백준 1647
- scpc
- dp
- 백준 1799
- 백준 1806
- 알고리즘
- 10159
- 백준
- boj 1799
- SCPC 2016
- codeground
- 백준 도시 분할 계획
- 백준 비숍
- 백준알고리즘
- boj 1806
- 백준 2467 용액
- boj 7579
- 네블컵 2회
- 백준 용액
- 풀이
- 연습문제
- boj 용액
- 백준 7579 앱
- BOJ
- 백준 부분합
- 백준 앱
- boj 앱
- 도시 분할 계획
- 2469
- 문제 풀이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |