BOJ 18118 : 7-세그먼트 디스플레이

2022. 2. 5. 02:30PS/DP

문제 링크

 

이는 dp로 풀 수 있다.

dp(i,j) = i개의 디스플레이로 만들어졌으면서, m으로 나눈 나머지를 j인 수 중 최대인 수

라고 정의하면 

dp(i, (10*j+k)%m) = max(10*dp(i-1,j)+k) (0<=k<10)

dp(i, (100*j+11)%m) = max(100*dp(i-1,j)+11)

 

라고 식을 세울 수 있다.

 

n이 최대 9이므로 답의 최댓값은 10^18쯤 되므로 long long 자료구조형으로 dp테이블을 채워주면 된다.

 

코드

'PS > DP' 카테고리의 다른 글

BOJ 2315 : 가로등 끄기  (0) 2021.11.16
BOJ 1126 : 같은 탑  (0) 2021.11.16
BOJ 9520 : NP-Hard  (0) 2021.11.16
BOJ 5573 : 산책  (0) 2021.11.16
BOJ 1023 : 올바른 괄호  (0) 2021.08.17