제출 #103540

#제출 시각아이디문제언어결과실행 시간메모리
103540HideoDuathlon (APIO18_duathlon)C++14
0 / 100
151 ms8760 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define mk make_pair
#define pb push_back
#define fr first
#define sc second
#define vi vector < int >
#define pii pair < int, int >

const int N = 2e5 + 7;
const int INF = 1e9 + 7;

int sz[N];
int n, m;
ll ans;

vi g[N];

void dfs (int v = 1, int p = 0){
    sz[v] = 1;
    for (int to : g[v]){
        if (to != p){
            dfs(to, v);
            sz[v] += sz[to];
        }
    }

}

main(){
    cin >> n >> m;
    for (int i = 1; i <= m; i++){
        int a, b;
        cin >> a >> b;
        g[a].pb(b);
        g[b].pb(a);
    }
    if (m == n - 1){
        dfs();
        for (int i = 1; i <= n; i++){
            ans += sz[i] * (n - sz[i]);
        }
        ans -= n - 1;
        cout << (ll) ans * 2 - ((n * - 1) * (n - 2));
    }
    else {
        cout << 0;
    }
}

컴파일 시 표준 에러 (stderr) 메시지

count_triplets.cpp:32:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main(){
      ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...