B题贪心
共鸣问题
https://ac.nowcoder.com/acm/contest/10325/B
- 对于每对匹配(x,y,z)
- 如果都不响是 -z
如果响一个是 0
如果都响是 z - 那么可以一开始减去对应的z
这样子可以降低起点后改变理解 - 如果都不响是 0
如果响一个是 +z
如果都响是 +2z - 之后贪心即可
class Solution { public: long long wwork(int n, int m, vector<int>& a, vector<vector<int> >& b) { long long ans=0; vector<long long> aa(n); for (int i=0;i<n;i++) { aa.at(i)=a.at(i); } for (vector<int> &i:b) { int x=i.at(0)-1; int y=i.at(1)-1; int z=i.at(2); aa.at(x)+=z; aa.at(y)+=z; ans-=z; } for (int i=0;i<n;++i) { ans+=max(aa.at(i),0LL); } return ans; } };