2374. 边积分最高的节点
这是一个有向图,且每个节点都只有一条出边,指向0的边有1,2,3,4 == 10, 指向7的有5,6 = 11.
我们只需要一次遍历就可以解决,先搞一张哈希表,k存节点编号,v存指向该节点的编号和。维护好这张哈希表即可完成。
class Solution {
public:int edgeScore(vector<int>& e) {unordered_map<long long, long long> hash;long long ans = 0;long long ansi = 0;for (int i = 0; i < e.size(); i++){hash[e[i]] += i;if (hash[e[i]] > ans) {ans = hash[e[i]];ansi = e[i];}if (hash[e[i]] == ans) {if (ansi > e[i]) ansi = e[i];}}return ansi;}
};