boj 10814 : 나이순 정렬 https://www.acmicpc.net/problem/10814 stable sort란 무엇인가? 라는 문제와 같다.stable sort란, 정렬을 하되 정렬값 순서를 제외한 순서는 바꾸지 않는 sorting방법이다. merge sort로는 간단하게 구현할 수 있고, quick sort에선 stable sort를 위한 모종의 작업이 필요하다. 다행히 c++과 java에선 stable_sort를 지원해서 문제를 풀 때엔 라이브러리를 이용하면 된다.
boj 1915 : 가장 큰 정사각형 https://www.acmicpc.net/problem/1915 2가지 방법으로 풀었다.첫번째 방법은 sum을 이용하여 해결하는 것.sum[i][j]를 sum{ a[u][v] } (u는 1~i까지, v는 1~j까지)sum[i][j] - sum[i-k+1][j] - sum[i][j-k+1] + sum[i-k+1][j-k+1] == k*k 일때 한변의 길이가 k인 정사각형이다. 아래의 사진을 보면 참고가 될지도 모르겠다. 하지만 위의 방법은 아슬아슬하게 시간초과를 면한다. 시간복잡도는 n*m*min(n,m)이다. 두번째 풀이법은 다른사람들의 코드를 보고 나서야 떠올릴 수 있었는데, c[i][j]를 i,j를 오른쪽 아래로 둘 때의 가장 큰 정사각형이라고 생각하자. 그러면..
boj 11049 : 행렬 곱셈 순서 https://www.acmicpc.net/problem/11049 divide&conquer와 메모이제이션을 이용하여 해결하였다.a[i][1] : i번째 행렬의 row, a[i][2] : j번째 행렬의 col.위와같이 두면, 1. f(i,j) : i번째 행렬에서 j번째 행렬까지의 최소 곱셈 수2. f(i,j) = min { f(i,i) + f(i + 1,j) + a[i][1]*a[i+1][1]*a[j][2] , f(i,i+1) + f(i+2,j) + a[i][1]*a[i+2][1] + a[i][1]*a[i+2][1]*a[j][2], ... , f(i,j-1) + f(j,j) + a[i][1]*a[j][1]*a[j][2] } 중복된 연산을 제거하기 위해 f(i,j)를..
boj 1003 : 피보나치 함수 https://www.acmicpc.net/problem/1003 introduction to dynamic programming이라는 책이 있다면 앞부분에 수록될만한 문제이다. 1. fibonacci[n][0] : fibonacci(n)이 0을 호출하는 횟수2. fibonacci[n][1] : fibonacci(n)이 1을 호출하는 횟수 위와같이 두면, 3. fibonacci[n][0] = fibonacci[n-1][0] + fibonacci[n-2][0]4. fibonacci[n][1] = fibonacci[n-1][1] + fibonacci[n-2][1]
boj 1874 : 스택 수열 https://www.acmicpc.net/problem/1874 스택수열은 큐와 스택으로 해결된다.1. Ai : i번째 문자2. queue : 1~N까지 순서대로 담켜있다.3. stack : stack의 top은 0.- 여기까지가 전처리. 1. Ai가 queue의 front보다 같거나 작을 때까지 queue를 pop하고 stack에 push.;2. Ai가 stack의 top과 같으면 pop.3. i++ 1,2,3의 과정을 반복하면 답을 구할 수 있다. 올바르지 않은 수열은 어떻게 구할 수 있을까?stack의 top보다 Ai가 작다면 만들어질 수 없는 스택수열이다. stack의 top보다 Ai가 작으면 stack의 pop 과정이 이루어진 후에 Ai를 pop할 수 있는데, 이..
- Total
- Today
- Yesterday
- SCPC 2016
- 백준알고리즘
- 풀이
- 백준 2467 용액
- codeground
- 10159
- 백준 앱
- BOJ
- 백준 1806
- 백준
- 백준 7579 앱
- 2469
- 백준 부분합
- boj 1799
- 알고리즘
- 백준 비숍
- 백준 1799
- boj 7579
- dp
- 도시 분할 계획
- scpc
- 문제 풀이
- 백준 용액
- boj 1806
- 네블컵 2회
- 백준 1647
- 백준 도시 분할 계획
- 연습문제
- boj 용액
- boj 앱
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |