关注
笔试时写的O(n2),过70%,笔试后想到的O(nlongn),(这里假设冲突对不会重复)
#include<iostream>
(5488)#include<algorithm>
#include<vector>
using namespace std;
int main() {
int n, m;
cin >> n >> m;
vector<int> a(n), b(n);
vector<int> del(n);
int sup = 0;
for (int i = 0; i < n; ++i) {
cin >> a[i] >> b[i];
sup += b[i];
del[i] = b[i] - a[i];
}
vector<int> ans(n, sup);
for (int i = 0; i < n; ++i)
ans[i] += n * b[i];
sort(del.begin(), del.end());
vector<int> sum(n + 1, 0);
for (int i = 0; i < n; ++i)
sum[i + 1] = sum[i] + del[i];
for (int i = 0; i < n; ++i) {
int curDel = b[i] - a[i];
int idx = upper_bound(del.begin(), del.end(), curDel)- del.begin();
ans[i] -= sum[n] - sum[idx];
ans[i] -= idx * curDel;
ans[i] -= b[i] + a[i];
}
for (int i = 0; i < m; ++i) {
int l, r;
cin >> l >> r;
--l; --r;
int curDel = min(a[l] + b[r], a[r] + b[l]);
ans[l] -= curDel;
ans[r] -= curDel;
}
for (int i = 0; i < n; ++i)
cout << ans[i] << " ";
return 0;
}
查看原帖
1 3
相关推荐
牛客热帖
更多
正在热议
更多
# 有哪些公司在面试时考察AICoding? #
6510次浏览 135人参与
# 你认为小厂实习有用吗? #
137276次浏览 744人参与
# 厦门银行科技岗值不值得投 #
22171次浏览 481人参与
# HR面都在聊什么? #
5963次浏览 75人参与
# 如何快速融入团队? #
47657次浏览 299人参与
# 父母问你工作找得怎么样,怎么回 #
13918次浏览 180人参与
# 找工作如何保持松弛感? #
136856次浏览 1469人参与
# AI“智障”时刻 #
34820次浏览 151人参与
# AI时代还有必要刷leetcode吗? #
4426次浏览 74人参与
# 想从事Agent应该学习哪些技术? #
3347次浏览 110人参与
# 什么人最适合大厂? #
7309次浏览 72人参与
# 从投递到OC,你用了多久 #
13365次浏览 118人参与
# 顺丰求职进展汇总 #
84312次浏览 360人参与
# 哪些公司面试还在问八股? #
6980次浏览 78人参与
# 查收我的offer竞争力报告 #
292492次浏览 1738人参与
# 如果没找到工作,考公是你的退路吗 #
70500次浏览 458人参与
# 哪一刻你突然觉得实习“有点值了” #
8592次浏览 67人参与
# 双非本科的出路是什么? #
227528次浏览 1651人参与
# AI Coding的使用心得 #
33391次浏览 240人参与
# 我的求职进度条 #
1025051次浏览 6988人参与
# 面试被问期望薪资时该如何回答 #
390863次浏览 2186人参与

天翼支付科技有限公司公司福利 19人发布