20WA求调
查看原帖
20WA求调
1125575
lordrigs楼主2024/8/3 19:38
#include <bits/stdc++.h>
#define ll long long
#define endl "\n"
using namespace std;
int n, m, u, v, vis[100005], cnt;
vector<int> a[100005];
void dfs(int now)
{
    for (int i = 0; i < a[now].size(); i++)
    {
        if (!vis[a[now][i]])
        {
            vis[a[now][i]] = vis[now] % 2 + 1;
            cnt += vis[now] % 2;
            dfs(a[now][i]);
        }
    }
}
int main()
{
    // freopen("xxx.in", "r", stdin);
    // freopen("xxx.out", "w", stdout);
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin >> n >> m;
    for (int i = 1; i <= m; i++)
    {
        cin >> u >> v;
        a[u].push_back(v);
        a[v].push_back(u);
    }
    for (int i = 1; i <= n; i++)
    {
        if (!vis[i])
        {
            dfs(i);
        }
    }
    cout << min(cnt, n - cnt) << " " << max(cnt, n - cnt);
    return 0;
}
2024/8/3 19:38
加载中...