1. 문제 링크 https://codeforces.com/contest/1324/problem/F Problem - F - Codeforces codeforces.com 2. 문제 개요 n개의 정점, n-1개의 간선을 가진 tree가 주어진다. 트리의 값이 0이면 black, 1이면 white이다. 3. 문제 힌트 DP top-down , bottom - up 2가지를 모두 써야 한다. dp[index]를 정의해야 하는데, dp[next] += max(dp[cur],0) 모두 연결된 간선에 대해서 max를 반복해야 할 것이다. 4. 문제 풀이 힌트의 의미를 문제의 흐름과 함께 풀어보자. 일단 dp의 초기값은 검은색이면 -1, 흰색이면 1로 두고 시작하자. 예제의 그림을 보면, 다음과 같다. 루트는 의미 ..
1. 문제 링크 https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 2. 문제 개요 피보나치 함수 재귀 호출에 의하여 (0)과 (1)이 몇 번 호출되는지 세는 프로그램 구현. 3. 문제 힌트!! ( 힌트만 보고 다시 구현해보세요. ) dp배열을 만들 때 0과 1이 따로들어가도록 2개 선언하기. 기존의 피보나치 함수는 값을 반환했는데(0에서 0, 1에서 1), 이번에는 0의 개수, 1의 개수를 반환하기. 4. 문제 풀이 피보나치 함수에서 반환 할 때 pair를 사용했습니다. pair dp[n]은 입력되는 수가 n일 때의 0과 1이 호출되는 횟수를..