leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

0690.cpp (693B)


0 /* 1 // Definition for Employee. 2 class Employee { 3 public: 4 int id; 5 int importance; 6 vector<int> subordinates; 7 }; 8 */ 9 10 class Solution { 11 public: 12 int getImportance(const vector<Employee *> employees, int id) const { 13 static const Employee *um[2001]; 14 15 memset(um, 0x00, sizeof(um)); 16 for (const Employee *employee : employees) 17 um[employee->id] = employee; 18 19 int res = 0; 20 queue<int> q({id}); 21 while (!q.empty()) { 22 int id = q.front(); 23 q.pop(); 24 res += um[id]->importance; 25 for (const int sub : um[id]->subordinates) 26 q.push(sub); 27 } 28 29 return res; 30 } 31 };