N이 작아 재귀를 돌릴 줄 아는자!!그냥 푸리~~DP로 푸는걸 생각해봐야것다.
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 37 38 39 40 | #include <stdio.h> #include <string.h> typedef struct { int T, P; }Money; int N, visit[16], MAX; Money M[16]; void DFS(int cur, int total) { if (total > MAX) MAX = total; for (int i = cur + 1; i <= N; i++) { if (i + M[i].T - 1 > N) continue; DFS(i + M[i].T - 1, total + M[i].P); } return; } int main() { scanf("%d", &N); MAX = -1; for (int i = 1; i <= N; i++) scanf("%d %d", &M[i].T, &M[i].P); DFS(0, 0); printf("%d", MAX); return 0; } | cs |
'SW 업무 관련 > 백준' 카테고리의 다른 글
[C언어] 15685. 드래곤 커브 (423) | 2018.10.14 |
---|---|
[C언어] 14500 테트로미노 (404) | 2018.10.14 |
[C언어] 9207. 페그 솔리테어 (0) | 2018.10.03 |
[C언어]14620 꽃길 (0) | 2018.10.01 |
[C언어] 15683. 감시 (0) | 2018.09.26 |