12412022-03-28 17:50:05k_balintEnergiatakarékos ellenőrzéscpp14Elfogadva 100/10079ms44828 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int c=1e5+5;

vector<int> adj[c];
ll dp[c][2];
int sz[c];

void dfs(int v, int p){
    sz[v]=1;

    for(int x:adj[v]){
        if(x!=p){
            dfs(x,v);
            sz[v]+=sz[x];
            dp[v][0]+=min(dp[x][0]+8, dp[x][1]+2*sz[x]);
            dp[v][1]+=dp[x][1]+2*sz[x];
        }
    }
}

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);

    int n; cin>>n;
    for(int i=1;i<n;i++){
        int a,b; cin>>a>>b;
        adj[a].push_back(b);
        adj[b].push_back(a);
    }

    dfs(1,0);

    cout << min(dp[1][0],dp[1][1]) << endl;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva4ms6604 KiB
2Elfogadva79ms18144 KiB
subtask25/5
3Elfogadva37ms16368 KiB
4Elfogadva37ms17124 KiB
5Elfogadva35ms17908 KiB
6Elfogadva37ms18656 KiB
7Elfogadva39ms19444 KiB
subtask315/15
8Elfogadva3ms11596 KiB
9Elfogadva3ms11608 KiB
10Elfogadva4ms11608 KiB
11Elfogadva3ms11612 KiB
12Elfogadva3ms11616 KiB
13Elfogadva4ms11616 KiB
14Elfogadva3ms11620 KiB
subtask415/15
15Elfogadva3ms11632 KiB
16Elfogadva3ms11628 KiB
17Elfogadva3ms11636 KiB
18Elfogadva3ms11636 KiB
19Elfogadva3ms11648 KiB
20Elfogadva4ms11644 KiB
21Elfogadva3ms11656 KiB
subtask565/65
22Elfogadva61ms23264 KiB
23Elfogadva75ms24340 KiB
24Elfogadva64ms25552 KiB
25Elfogadva59ms26708 KiB
26Elfogadva59ms27864 KiB
27Elfogadva79ms38568 KiB
28Elfogadva75ms42268 KiB
29Elfogadva68ms36160 KiB
30Elfogadva65ms34576 KiB
31Elfogadva71ms33740 KiB
32Elfogadva67ms34612 KiB
33Elfogadva63ms35756 KiB
34Elfogadva39ms34536 KiB
35Elfogadva41ms35704 KiB
36Elfogadva41ms36944 KiB
37Elfogadva54ms38340 KiB
38Elfogadva56ms40160 KiB
39Elfogadva54ms43504 KiB
40Elfogadva54ms44828 KiB