QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#85877#5683. 大富翁ScintillaAC ✓84ms45428kbC++141.1kb2023-03-08 20:11:512023-03-08 20:11:52

Judging History

This is the latest submission verdict.

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-03-08 20:11:52]
  • Judged
  • Verdict: AC
  • Time: 84ms
  • Memory: 45428kb
  • [2023-03-08 20:11:51]
  • Submitted

answer

#include <bits/stdc++.h>

using namespace std;

#define rep(i, s, e) for (int i = s; i <= e; ++i)
#define drep(i, s, e) for (int i = s; i >= e; --i)
#define file(a) freopen(#a".in", "r", stdin), freopen(#a".out", "w", stdout)
#define pv(a) cout << #a << " = " << a << endl
#define pa(a, l, r) cout << #a " : "; rep(_, l, r) cout << a[_] << ' '; cout << endl

const int N = 1e6 + 10;

int read() {
  int x = 0, f = 1; char c = getchar();
  for (; c < '0' || c > '9'; c = getchar()) if (c == '-') f = -1;
  for (; c >= '0' && c <= '9'; c = getchar()) x = x * 10 + c - 48;
  return x * f;
}

int n, w[N], p[N], dep[N], sz[N];
vector <int> e[N];
long long ans;

void dfs(int u) {
  sz[u] = 1;
  for (int v : e[u]) dep[v] = dep[u] + 1, dfs(v), sz[u] += sz[v];
  w[u] = sz[u] - dep[u] - w[u];
}

int main() {
  n = read();
  rep(i, 1, n) w[i] = read();
  rep(i, 2, n) p[i] = read(), e[p[i]].emplace_back(i);
  dep[1] = 1, dfs(1);
  sort(w + 1, w + n + 1);
  reverse(w + 1, w + n + 1);
  for (int i = 1; i <= n; i += 2) ans += w[i];
  printf("%lld\n", ans);
  return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 6ms
memory: 27208kb

input:

8
0 1 1 0 0 0 0 0
3 1 8 4 1 3 1

output:

3

result:

ok single line: '3'

Test #2:

score: 0
Accepted
time: 6ms
memory: 27192kb

input:

10
1 0 0 0 0 0 0 0 0 1
8 1 9 10 9 8 4 5 1

output:

2

result:

ok single line: '2'

Test #3:

score: 0
Accepted
time: 8ms
memory: 27224kb

input:

8
1 0 1 0 0 1 0 0
1 6 2 1 2 1 5

output:

2

result:

ok single line: '2'

Test #4:

score: 0
Accepted
time: 11ms
memory: 27024kb

input:

8
0 0 0 1 1 0 1 1
7 1 3 4 1 4 3

output:

0

result:

ok single line: '0'

Test #5:

score: 0
Accepted
time: 2ms
memory: 27028kb

input:

10
0 0 1 0 0 0 0 1 1 0
1 5 1 1 9 1 2 4 4

output:

3

result:

ok single line: '3'

Test #6:

score: 0
Accepted
time: 74ms
memory: 33300kb

input:

199998
2 2 3 2 1 3 0 2 0 3 2 0 2 2 1 1 3 3 3 3 2 0 1 2 0 3 1 1 0 0 3 3 3 3 0 3 2 2 1 1 2 2 0 3 3 3 1 2 0 2 2 1 2 0 3 2 0 0 0 3 2 3 0 1 1 2 0 2 2 0 3 1 1 2 3 1 0 3 0 2 1 0 3 3 1 1 2 3 1 0 3 0 1 2 3 1 3 3 0 3 1 2 1 1 3 2 1 3 3 3 1 1 2 3 2 0 2 3 2 2 1 1 2 1 2 0 1 0 1 3 3 2 3 2 0 3 2 2 2 0 3 2 1 2 3 1 2...

output:

-101057

result:

ok single line: '-101057'

Test #7:

score: 0
Accepted
time: 68ms
memory: 33648kb

input:

199992
2 2 0 0 2 0 1 2 1 2 2 1 1 2 1 1 3 0 0 3 1 0 2 0 0 1 0 3 2 0 2 3 2 3 2 0 3 2 2 2 3 2 1 3 1 1 2 3 1 2 0 0 2 2 0 3 1 1 0 1 1 1 0 2 3 0 3 0 3 1 3 2 3 1 0 3 2 2 3 1 3 0 2 2 0 3 2 2 1 1 0 1 2 0 1 3 1 2 1 1 3 3 1 2 1 3 0 1 1 1 2 1 2 0 2 0 0 0 2 0 0 3 1 3 0 1 1 0 3 1 1 2 3 1 1 0 2 0 3 2 1 2 0 2 1 0 0...

output:

-63508

result:

ok single line: '-63508'

Test #8:

score: 0
Accepted
time: 51ms
memory: 33272kb

input:

199993
2 3 0 1 3 3 2 1 0 2 2 0 3 1 2 2 1 2 2 3 0 1 0 0 2 1 1 3 2 1 0 2 1 2 2 3 3 3 1 2 2 2 1 3 2 2 0 2 3 3 2 1 3 0 1 3 3 2 1 1 3 0 2 2 0 3 1 3 2 0 1 1 3 0 0 2 3 2 1 0 1 1 3 0 1 0 2 3 2 1 0 3 2 2 3 1 3 2 2 0 1 2 2 0 2 1 2 0 1 1 1 2 2 3 2 1 2 2 0 0 2 3 3 1 1 0 3 2 2 3 1 3 2 1 3 0 2 3 0 3 0 3 3 2 1 2 2...

output:

-72819

result:

ok single line: '-72819'

Test #9:

score: 0
Accepted
time: 50ms
memory: 33440kb

input:

200000
0 2 2 2 2 3 2 1 2 3 3 1 2 1 0 1 2 1 2 3 1 2 2 3 3 3 2 2 0 3 3 0 0 1 3 3 0 1 0 1 0 0 2 0 1 3 1 0 1 2 1 1 1 2 1 3 3 3 2 2 1 2 0 2 1 0 3 2 1 0 0 3 1 3 1 0 2 0 1 3 2 1 3 3 2 3 3 1 3 2 2 0 0 1 2 0 3 3 1 0 3 2 1 3 1 3 0 0 2 3 1 2 3 0 0 0 2 3 1 0 1 1 3 2 2 6 3 2 2 0 2 1 0 2 3 0 0 0 1 2 3 1 1 1 2 2 3...

output:

-87803

result:

ok single line: '-87803'

Test #10:

score: 0
Accepted
time: 52ms
memory: 33276kb

input:

199994
69536 93956 146435 58370 55904 55731 40099 34869 22948 62455 25557 61814 118354 34694 37607 102825 86029 141405 6587 18273 174985 101354 139220 168750 14953 92256 162412 164115 172096 52676 126381 152299 140824 180431 131743 128463 115582 173595 160676 168294 26378 66194 115896 193154 79199 4...

output:

-10000211244

result:

ok single line: '-10000211244'

Test #11:

score: 0
Accepted
time: 5ms
memory: 27028kb

input:

31
0 2 0 1 0 1 2 2 0 1 2 0 2 2 1 2 1 0 0 0 2 1 2 0 1 0 0 2 0 1 0
15 2 13 15 8 30 15 25 25 2 13 1 13 1 30 1 2 30 11 2 13 13 11 13 1 15 12 16 15 15

output:

-6

result:

ok single line: '-6'

Test #12:

score: 0
Accepted
time: 12ms
memory: 30872kb

input:

199992
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...

output:

20452

result:

ok single line: '20452'

Test #13:

score: 0
Accepted
time: 16ms
memory: 31036kb

input:

199996
0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 0 0 0 1 0 1 1 1 0 1 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 0 1 1 0 1 1 1 0 0 1 0 0 1 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 1 0 0 0 0 1 1 1 1 1 1 0 1 1 0 1 0 1 0 1 1 1 0 0 0...

output:

20009

result:

ok single line: '20009'

Test #14:

score: 0
Accepted
time: 20ms
memory: 31212kb

input:

199996
3 1 1 0 3 0 1 3 0 3 1 3 1 0 2 0 3 3 1 2 0 3 3 0 2 2 0 2 3 1 3 0 0 3 1 0 0 1 2 1 3 2 3 0 2 1 2 0 1 0 3 1 3 2 0 1 1 3 3 1 2 2 3 2 1 0 3 0 3 0 0 2 3 3 2 0 0 1 2 1 3 3 0 0 1 2 2 0 1 1 3 3 1 3 1 0 1 0 0 0 1 0 1 2 1 0 1 2 2 0 2 3 0 1 3 2 1 0 3 3 3 3 0 3 0 3 0 3 1 2 0 3 1 2 3 2 0 1 2 1 1 3 2 1 0 1 1...

output:

-100430

result:

ok single line: '-100430'

Test #15:

score: 0
Accepted
time: 35ms
memory: 31092kb

input:

199999
129505 14159 194788 69896 53179 103846 110185 158026 53493 4149 158821 181222 159742 175140 155608 37494 112878 78442 152990 5490 101005 39752 164304 162429 83386 88164 31144 84029 173037 92918 2500 103066 137572 20077 50183 115122 158847 51492 130020 193352 195330 30765 183180 118688 125622 ...

output:

-10014348789

result:

ok single line: '-10014348789'

Test #16:

score: 0
Accepted
time: 3ms
memory: 27076kb

input:

21
0 0 0 2 1 1 0 2 2 2 2 0 0 1 2 2 1 0 0 2 1
17 9 3 4 1 11 15 19 4 8 10 11 7 6 6 14 2 2 12 20

output:

-12

result:

ok single line: '-12'

Test #17:

score: 0
Accepted
time: 65ms
memory: 45428kb

input:

199995
18 17 17 5 17 15 14 20 7 18 10 15 18 15 15 7 18 13 16 11 5 14 9 9 18 20 5 9 15 15 3 12 4 20 10 1 9 3 1 0 12 1 16 17 19 8 16 17 19 8 11 19 12 10 13 6 4 4 9 19 17 14 6 0 18 2 15 9 7 0 4 17 20 14 10 6 7 0 5 11 2 7 16 5 14 12 2 11 7 17 5 1 0 17 14 20 19 16 2 19 2 16 5 6 2 4 13 6 5 4 12 13 11 7 5 ...

output:

-3519230

result:

ok single line: '-3519230'

Test #18:

score: 0
Accepted
time: 84ms
memory: 45244kb

input:

199991
17 4 13 20 14 9 9 6 5 2 20 4 5 10 5 2 8 3 16 8 2 0 18 20 19 16 10 13 19 9 12 19 11 13 14 6 11 16 20 12 5 11 16 14 19 18 3 0 13 6 1 14 13 14 14 8 13 15 3 3 5 11 9 10 15 6 6 4 16 19 17 18 15 9 6 14 12 20 15 6 19 6 15 11 1 9 16 4 8 0 4 2 13 16 5 15 12 14 20 12 20 11 15 18 7 6 17 4 20 11 8 4 6 9 ...

output:

-3391196

result:

ok single line: '-3391196'

Test #19:

score: 0
Accepted
time: 72ms
memory: 45268kb

input:

199990
8 20 5 15 1 2 9 1 14 1 10 13 0 20 18 10 3 12 13 19 1 7 2 3 12 5 2 12 13 8 16 3 4 4 17 19 9 10 14 20 5 6 13 12 4 20 19 9 10 5 9 9 2 17 17 2 10 2 2 12 20 14 11 2 1 16 15 0 2 5 1 20 11 19 5 20 16 14 9 14 5 13 17 19 3 13 8 7 13 4 15 12 16 19 18 19 3 15 4 14 5 15 14 3 19 5 13 5 15 6 17 3 10 14 1 6...

output:

-3235337

result:

ok single line: '-3235337'

Test #20:

score: 0
Accepted
time: 80ms
memory: 45308kb

input:

199997
18 18 7 20 11 13 2 3 3 15 16 13 15 17 16 5 3 9 16 18 13 7 17 5 11 0 9 14 11 5 19 4 19 12 6 15 17 18 4 13 15 1 16 16 16 18 7 0 1 17 5 3 1 13 1 12 12 0 1 20 9 17 13 0 3 9 7 0 9 9 6 1 0 5 18 9 15 1 3 0 11 3 12 20 10 7 17 1 4 11 6 12 6 4 17 5 5 12 1 12 3 2 16 11 13 13 13 18 2 1 17 0 11 11 19 11 1...

output:

-3568351

result:

ok single line: '-3568351'

Test #21:

score: 0
Accepted
time: 8ms
memory: 27036kb

input:

7
0 0 1 0 0 0 0
1 1 2 2 3 3

output:

2

result:

ok single line: '2'