关注
第三题,部分代码如下,只通过了10%的测试用例,自己写了几个例子, 还是没发现问题在哪,希望大家指点。
int val[5000][3], relation[5000];
vector<int> records(5000, -1);
int n;
ll maxHappy = -1, happy = -1;
cin >> n;
for (int i = 0; i < n; ++i)
for (int j = 0; j < 3; ++j)
cin >> val[i][j];
for (int i = 1; i < n; ++i) { // 1-n
int a, b;
cin >> a >> b;
relation[b] = a;
}
for (int j = 0; j < 3; ++j) {
records[0] = j;
happy = val[0][j];
for (int i = 1; i < n; ++i) {
int tmpMax = -1;
for (int k = 0; k < 3; ++k) {
if (k == j || k == records[relation[i]])
continue;
if (val[i][k] > tmpMax) {
records[i] = k;
tmpMax = val[i][k];
}
}
// printf("%d-%d: %d\n", j, i, tmpMax);
happy += tmpMax;
}
if (happy > maxHappy)
maxHappy = happy;
}
查看原帖
点赞 评论
相关推荐
牛客热帖
正在热议
# 25届秋招总结 #
376506次浏览 3737人参与
# 如果再来一次,你还会选择这个工作吗? #
100926次浏览 1017人参与
# 北方华创开奖 #
64545次浏览 503人参与
# 地方国企笔面经互助 #
6013次浏览 14人参与
# 简历被挂麻了,求建议 #
2524509次浏览 33456人参与
# 发工资后,你做的第一件事是什么 #
4625次浏览 19人参与
# 阿里云管培生offer #
46147次浏览 1376人参与
# ai智能作图 #
11031次浏览 174人参与
# 我的实习求职记录 #
6104339次浏览 83828人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
8786次浏览 180人参与
# 上班到公司第一件事做什么? #
14569次浏览 164人参与
# 阿里求职进展汇总 #
71801次浏览 780人参与
# 如何写一份好简历 #
615798次浏览 8700人参与
# 听到哪句话就代表面试稳了or挂了? #
96711次浏览 810人参与
# 还记得你第一次面试吗? #
29524次浏览 416人参与
# 华为工作体验 #
109368次浏览 852人参与
# 面试体验感最好的是哪家? #
91539次浏览 921人参与
# 网易求职进展汇总 #
38880次浏览 334人参与
# 如果有时光机,你最想去到哪个年纪? #
27029次浏览 559人参与
# 腾讯求职进展汇总 #
205578次浏览 1687人参与
# 硬件兄弟们 甩出你的华为奖状 #
75718次浏览 612人参与
# 上班苦还是上学苦呢? #
106710次浏览 865人参与