자료구조 및 알고리즘/백준

[python] 1699. 제곱수의 합

viamemine 2024. 6. 3. 19:29
728x90
반응형

 

문제: https://www.acmicpc.net/problem/1699

 

풀이

 

이전에 작성한 문제와 동일한 유형의 문제입니다. 

 

문제 풀이는 이 게시글을 확인해주시기 바랍니다.

https://esjeong153.tistory.com/96

 

[python] 17636. Four Squares

문제: https://www.acmicpc.net/problem/17626  풀이 이번 문제는 제곱수의 합을 구하는 문제입니다.dp로 해결했는데, 점화식을 찾는 것이 쉽지 않았습니다.   이해를 위해 그림을 첨부했습니다. i를 가

esjeong153.tistory.com

 

해당 게시글에 풀이과정이 설명되어 있기 때문에,

풀이과정의 설명 없이 바로 코드를 공유하도록 하겠습니다.

 

 

 

n = int(input())
dp = [i for i in range(n+1)]

for i in range(2, int(n**0.5)+1):
    for j in range(i*i, n+1):
        dp[j] = min(dp[j], dp[j-i*i]+1)

print(dp[n])
728x90

'자료구조 및 알고리즘 > 백준' 카테고리의 다른 글

[python] 9095. 1, 2, 3 더하기  (0) 2024.06.04
[python] 1463. 1로 만들기  (0) 2024.06.04
[python] 17636. Four Squares  (0) 2024.06.03
[python] 2839. 설탕 배달  (0) 2024.06.02
[python] 10870. 피보나치 수 5  (0) 2024.06.01