<7-2> DP - 회사 조직과 급여 (CorporationSalary)
PS/Topcoder training2018. 7. 1. 11:06
### DP ###
### SRM407 Div2 Level 2 ###
<소스코드>
- d[i] : i번 매니저의 부하직원들에 대한 salary의 합.
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 | #include <vector> #include <algorithm> using namespace std; class CorporationSalary { public: vector<int> child[51]; long long d[51]; long long salary(int k) { if(child[k].size() == 0) return 1; if(d[k]) return d[i]; long long ret = 0LL; for(int i=0; i<child[k].size(); i++) ret += salary(child[k][i]); return d[k] = ret; } long long totalSalary(vector<string> relations) { for(int i=0; i<relations.size(); i++) { d[i] = 0; for(int j=0; j<relations[i].size(); j++) { if(relations[i][j] == 'Y') child[i].push_back(j); } } long long ans = 0LL; for(int i=0; i<relations.size(); i++) ans += salary(i); return ans; } }; | cs |
'PS > Topcoder training' 카테고리의 다른 글
<7-5> DP - 악수 (HandShaking) (0) | 2018.07.04 |
---|---|
<5-7> 전체탐색 - 고장난 로봇 (CrazyBot) (0) | 2018.07.03 |
<5-4> 전체탐색 - 회문 (ThePalindrome) (0) | 2018.07.01 |
<7-4> DP - 킹 나이트 체스 (ChessMetric) (0) | 2018.07.01 |
<7-3> DP - 나쁜 이웃집 사람들 (BadNeighbors) (0) | 2018.07.01 |