168902025-05-15 16:45:40BucsMateEnergiatakarékos ellenőrzéscpp17Elfogadva 100/100128ms14984 KiB
#include <iostream>
#include <vector>
using namespace std;

const int c=1e5+5;

vector<int> adj[c];
long long dp[c][2];
int meret[c];

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

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

int main(){
    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 << dp[1][0] << endl;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms2612 KiB
2Elfogadva103ms9004 KiB
subtask25/5
3Elfogadva75ms7340 KiB
4Elfogadva75ms7360 KiB
5Elfogadva75ms7636 KiB
6Elfogadva78ms7340 KiB
7Elfogadva70ms7224 KiB
subtask315/15
8Elfogadva3ms2616 KiB
9Elfogadva3ms2612 KiB
10Elfogadva3ms2612 KiB
11Elfogadva3ms2612 KiB
12Elfogadva3ms2696 KiB
13Elfogadva3ms2612 KiB
14Elfogadva3ms2868 KiB
subtask415/15
15Elfogadva3ms2804 KiB
16Elfogadva3ms2612 KiB
17Elfogadva3ms2612 KiB
18Elfogadva3ms2612 KiB
19Elfogadva3ms2688 KiB
20Elfogadva3ms2580 KiB
21Elfogadva3ms2612 KiB
subtask565/65
22Elfogadva107ms8860 KiB
23Elfogadva105ms9012 KiB
24Elfogadva112ms9044 KiB
25Elfogadva104ms8904 KiB
26Elfogadva104ms8960 KiB
27Elfogadva120ms13920 KiB
28Elfogadva128ms14984 KiB
29Elfogadva118ms11316 KiB
30Elfogadva112ms10140 KiB
31Elfogadva112ms9120 KiB
32Elfogadva109ms9012 KiB
33Elfogadva109ms9020 KiB
34Elfogadva86ms7640 KiB
35Elfogadva94ms7728 KiB
36Elfogadva94ms7632 KiB
37Elfogadva96ms7892 KiB
38Elfogadva90ms8240 KiB
39Elfogadva93ms9392 KiB
40Elfogadva100ms9276 KiB