문제
https://www.acmicpc.net/problem/2056
풀이
dp!
#include <iostream>
#include <map>
using namespace std;
int main()
{
int N; cin >> N;
map<int, int>work_time;
int answer = 0;
for (int i = 0; i < N; i++)
{
int time, prevWorkCount;
cin >> time >> prevWorkCount;
work_time[i] = time;
int max = 0;
for (int k = 0; k < prevWorkCount; k++)
{
int prevWork; cin >> prevWork;
if (max < work_time[prevWork-1]) { max = work_time[prevWork-1]; }
}
work_time[i] += max;
if (answer < work_time[i]) { answer = work_time[i]; }
}
cout << answer;
}
'개발 > 백준' 카테고리의 다른 글
[SWEA] 1249번. 보급로 (C++) (4) | 2024.11.15 |
---|---|
[백준] 2212번. 센서 (C++) (0) | 2024.11.14 |
[백준] 2847번. 게임을 만든 동준이 (C++) (1) | 2024.11.12 |
[백준] 2665번. 미로만들기 (C++) (0) | 2024.11.11 |
[백준] 27961번. 고양이는 많을수록 좋다 (1) | 2024.11.09 |