Dynamic Programming

백준

[백준 1463] 1로 만들기 C++

다이나믹 프로그래밍 문제이다. 실버 문제라서 그런지 식이 바로 떠올라서 바로 풀었다. 가장 i =1 부터 i+1 , i *2 , i*3 을 하나씩 계산해 주면 된다. 사실 3번 틀렸는데 이유가 dp[1] = 1이 아니라 dp[1] =0 이다. dp[1] =1이라고 하면 100% 까지 가서 틀렸습니다가 뜬다. #include #define FASTIO ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); #define INF 987654321 typedef long long ll; using namespace std; int num; int cnt=0; int dp[1000005]; int main() { cin >> num; for (int i = 1; i

백준

[백준 14267] 회사문화 1

한번 틀려서 이유를 찾고자 조금 구글링을 한 문제였다. 구글링 해보니 예전에는 내리 갈굼 문제였는데, 지금은 칭찬하는걸로 내용이 바꼈다 ㅋㅋ 조금 귀엽게 바꾼것 같다 dp 를이용하여 풀었다. 그래프는 parent[] 배열을 이용하여 표현하였다. #include #define FASTIO ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); #define INF 987654321 using namespace std; int now[100001]; int dp[100001]; int parent[100001]; int N, M; int main() { cin >> N >>M; //직원관계 받기 int a, b, c; for (int i = 0; i a; parent..

케굴
'Dynamic Programming' 태그의 글 목록