기술 블로그

2482번 색상환 본문

알고리즘 문제/BOJ

2482번 색상환

parkit 2020. 3. 21. 09:31
728x90
반응형

https://www.acmicpc.net/problem/2482



다이나믹 동적 계획 cp cache 캐시 boj 백준 복습 필수 코테 추천 논리 Tip



다시 한 번 풀어 볼만한 문제인 것 같다.


그런데 처음 제출할 때 틀릴 줄 알았는데 맞았다.


n번 째 색과 1번 째 색이 색칠되어지는 경우를 고려하지 않은 것 같은데 정답이었다.


이유는 나중에 다시 알아봐야겠다.







hsdev2482.pptx























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
32
33
34
35
36
#include<bits/stdc++.h>
 
using namespace std;
 
#define Max 1004
#define Mod 1000000003
 
int n, k, cache[Max][Max];
 
int main()
{
    //freopen("C:\\Users\\park7\\Desktop\\buba.in.6", "r", stdin);
    cin.tie(0);
 
    scanf("%d %d"&n, &k);
 
    if ((n + 1/ 2 < k) {
        printf("0\n");
        return 0;
    }
 
    for (int i = 1; i <= n; i++) {
        cache[i][1= i;
    }
 
    for (int i = 4; i <= n; i++) {
        for (int j = 2; j <= k; j++) { // j가 1일 때는 이미 위에서 정의
            cache[i][j] = cache[i - 2][j - 1] % Mod + cache[i - 1][j] % Mod;
            cache[i][j] %= Mod;
        }
    }
 
    printf("%d\n", cache[n][k]);
 
    return 0;
}
cs




















728x90
반응형

'알고리즘 문제 > BOJ' 카테고리의 다른 글

3114번 사과와 바나나  (0) 2020.03.25
18808번 스티커 붙이기  (0) 2020.03.23
1756번 피자 굽기  (0) 2020.03.20
7579번 앱  (0) 2020.03.19
1866번 택배  (0) 2020.03.18