[BOJ 17626] Four Squares (C++)
Four Squares (Silver 4) 문제 전체 문제 보기 17626번: Four Squares 라그랑주는 1770년에 모든 자연수는 넷 혹은 그 이하의 제곱수의 합으로 표현할 수 있다고 증명하였다. 어떤 자연수는 복수의 방법으로 표현된다. 예를 들면, 26은 52과 12의 합이다; 또한 42 + 32 + 1 www.acmicpc.net 접근법 이 문제는 완전탐색 혹은 DP로 풀 수 있습니다. 여기서는 DP로 접근하여 풀었습니다. DP로 풀기 위해서 점화식은 다음과 같이 정리할 수 있습니다. \[f(n) = \mbox{min}(f(1 * 1) + 1 , f(2 * 2) + 1, ... ,f(\sqrt{n} * \sqrt{n} + 1)\] 전체 구현 아래와 같이 구현하여 문제를 해결할 수 있습니다. ..