QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#878243 | #9696. Analysis | ucup-team5226# | WA | 1ms | 3584kb | C++20 | 1.0kb | 2025-02-01 14:20:00 | 2025-02-01 14:20:01 |
Judging History
This is the latest submission verdict.
- [2025-02-06 00:45:32]
- hack成功,自动添加数据
- (/hack/1517)
- [2025-02-01 14:20:00]
- Submitted
answer
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ll n, a, b;
cin >> n >> a >> b;
vector<vector<ll>> g(n);
for (int i = 0; i < n - 1; i++) {
ll u, v;
cin >> u >> v;
u--, v--;
g[u].push_back(v), g[v].push_back(u);
}
vector<ll> d1(n, -1), d2(n, -1);
queue<ll> q;
q.push(0);
d1[0] = 0;
while (!q.empty()) {
ll u = q.front();
q.pop();
for (ll v : g[u]) {
if (d1[v] == -1) {
d1[v] = d1[u] + 1;
q.push(v);
}
}
}
ll ma_idx = max_element(d1.begin(), d1.end()) - d1.begin();
q.push(ma_idx);
d2[ma_idx] = 0;
while (!q.empty()) {
ll u = q.front();
q.pop();
for (ll v : g[u]) {
if (d2[v] == -1) {
d2[v] = d2[u] + 1;
q.push(v);
}
}
}
ll res = *max_element(d2.begin(), d2.end());
cout << (n - 1 - res) * min(a, b) << endl;
}
詳細信息
Test #1:
score: 100
Accepted
time: 1ms
memory: 3584kb
input:
5 100 1000 1 2 2 3 3 4 4 5
output:
0
result:
ok 1 number(s): "0"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
5 100 200 1 2 1 3 2 4 2 5
output:
100
result:
ok 1 number(s): "100"
Test #3:
score: -100
Wrong Answer
time: 0ms
memory: 3584kb
input:
10 133494816 109943166 10 8 5 3 1 2 8 9 8 5 2 4 8 7 8 6 10 1
output:
329829498
result:
wrong answer 1st numbers differ - expected: '219886332', found: '329829498'