Submission #898921

#TimeUsernameProblemLanguageResultExecution timeMemory
898921vjudge1Magic Tree (CEOI19_magictree)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long int #define pb push_back #define mp make_pair #define pii pair<int, int> #define all(x) x.begin(), x.end() #define u_map unordered_map #define int ll const int maxn = 1e5 + 5, mod = 1e9 + 7; vector<int> adj[maxn]; int d[maxn], w[maxn], ans, dp[maxn]; map<int, int> cnt; bool issub = true; signed main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int n, m, k; cin >> n >> m >> k; for (int i = 2; i <= n; i++) { int p; cin >> p; if (p != i - 1) { issub = false; } adj[p].pb(i); } for (int i = 1; i <= m; i++) { int _v, _d, _w; cin >> _v >> _d >> _w; d[_v] = _d; w[_v] = _w; ans += _w; } if (issub) { for (int i = n; i >= 1; i--) { if (i == n) { cnt[d[i]]++; dp[i] = 1; continue; } cnt[d[i]]++ dp[i] = max(dp[i + 1], cnt[d[i]] * d[i]); } cout << dp[1]; return 0; } cout << ans; return 0; }

Compilation message (stderr)

magictree.cpp: In function 'int main()':
magictree.cpp:47:18: error: expected ';' before 'dp'
   47 |       cnt[d[i]]++
      |                  ^
      |                  ;
   48 |       dp[i] = max(dp[i + 1], cnt[d[i]] * d[i]);
      |       ~~