Submission #334677

# Submission time Handle Problem Language Result Execution time Memory
334677 2020-12-09T18:20:17 Z nikatamliani Sjekira (COCI20_sjekira) C++14
110 / 110
74 ms 7424 KB
#include <bits/stdc++.h>
using namespace std;
const int N = 2e5+10;
#define ll long long
int main() {
	ios::sync_with_stdio(0); cin.tie(0);
	int n; 
	cin >> n;
	vector<int> id, deg(n+1), a(n+1);
	vector<vector<int>> g(n+1);
	for(int i = 1; i <= n; ++i) {
		cin >> a[i];
		id.push_back(i);
	}
	for(int i = 1; i < n; ++i) {
		int u, v;
		cin >> u >> v;
		g[u].push_back(v);
		g[v].push_back(u);
		++deg[u];
		++deg[v];
	}
	sort(id.begin(), id.end(), [&](int x, int y) {
		return a[x] > a[y];
	});
	bool is_first = true;
	ll ans = 0;
	for(int i : id) {
		ans += (long long)a[i] * (deg[i] + (!is_first));
		for(int x : g[i]) {
			--deg[x];
		}
		is_first = false;
	}
	cout << ans << '\n';
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 51 ms 6124 KB Output is correct
2 Correct 40 ms 5020 KB Output is correct
3 Correct 35 ms 4592 KB Output is correct
4 Correct 40 ms 5100 KB Output is correct
5 Correct 66 ms 7276 KB Output is correct
6 Correct 45 ms 7276 KB Output is correct
7 Correct 41 ms 6380 KB Output is correct
8 Correct 35 ms 5868 KB Output is correct
9 Correct 25 ms 4080 KB Output is correct
10 Correct 51 ms 7276 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 51 ms 6124 KB Output is correct
7 Correct 40 ms 5020 KB Output is correct
8 Correct 35 ms 4592 KB Output is correct
9 Correct 40 ms 5100 KB Output is correct
10 Correct 66 ms 7276 KB Output is correct
11 Correct 45 ms 7276 KB Output is correct
12 Correct 41 ms 6380 KB Output is correct
13 Correct 35 ms 5868 KB Output is correct
14 Correct 25 ms 4080 KB Output is correct
15 Correct 51 ms 7276 KB Output is correct
16 Correct 1 ms 364 KB Output is correct
17 Correct 1 ms 364 KB Output is correct
18 Correct 1 ms 364 KB Output is correct
19 Correct 1 ms 364 KB Output is correct
20 Correct 1 ms 364 KB Output is correct
21 Correct 16 ms 2284 KB Output is correct
22 Correct 12 ms 2028 KB Output is correct
23 Correct 70 ms 7148 KB Output is correct
24 Correct 46 ms 5228 KB Output is correct
25 Correct 46 ms 5228 KB Output is correct
26 Correct 29 ms 3696 KB Output is correct
27 Correct 36 ms 4336 KB Output is correct
28 Correct 62 ms 5740 KB Output is correct
29 Correct 31 ms 3952 KB Output is correct
30 Correct 74 ms 7424 KB Output is correct