이론87 [백준] 2606번 바이러스 (DFS) -문제 -코드 틀렸던 이유 : 인접리스트 사용함(특정 방향으로만 이동가능하게 구현해서 일부 경우의 수를 빼먹음) 인접행렬 사용해서 양방향 이동 가능하게 하여 오류수정 #include int n, m, cnt, ch[101], map[101][101]; void DFS(int v) { ch[v] = 1; cnt++; for (int i = 1; i 2022. 7. 28. [백준] 1010번 다리놓기 (동적 계획법/Dynamic Programming) -문제 -코드 조합을 이용한 재귀, 메모이제이션 #include #include using namespace std; int dp[31][31]; int d(int x, int y) { if (dp[x][y] > 0) return dp[x][y]; else if (x==y || y == 0) return 1; else return dp[x][y] = d(x-1,y) + d(x-1, y-1); } int main() { int t, n, m; cin >> t; vector a(t, vector(2)); for (int i = 0; i > a[i][0]; cin >> a[i][1]; } for (int i = 0; i < t; i++) { printf("%d\n", d(a[i].. 2022. 7. 28. [백준] 1003번 피보나치 함수 (동적 계획법/Dynamic Programming) - 문제 - 작성 코드 #include #include using namespace std; int main() { int t, max =0; cin >> t; vector a(t); vector dp(41, vector(2, 0)); for (int i = 0; i > a[i]; if (max < a[i]) max = a[i]; } dp[0][0] = 1; dp[0][1] = 0; dp[1][0] = 0; dp[1][1] = 1; for (int i = 2; i 2022. 7. 28. 이전 1 ··· 19 20 21 22 다음