[C/C++] 백준 #2630 색종이 만들기(분할정복)
이번 문제는 분할정복을 이용해서 풀면 어렵지 않게 풀 수 있습니다. C/C++을 사용하다보면, 반환값을 여러개를 두고 싶은데, 그것이 어렵거나 할 때가 많죠. 색종이 만들기 문제에서는 흰종이와 파란종이를 나누어서 출력을 해주어야 하는데, 그것이 잘 안 되죠. https://www.acmicpc.net/problem/2630 반환값을 여러개가 안 되니까, 제 경우에는 65536(\(2^{16}\))의 값을 흰종이로 두고서 4바이트 정수 1개를 가지고 2바이트 정수 2개를 만들어서 사용했습니다. 분할정복한 결과가 4개의 구역이 모두 같은 색인 경우에는 1개의 종이로 대치하는 부분을 작성했습니다. int s = rec(r, c, v, n); s += rec(r+n, c, v, n); s +..
2024. 5. 10.