社区讨论
90 pts WA on #9求调
P2319[HNOI2006] 超级英雄参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @m3u0eeah
- 此快照首次捕获于
- 2024/11/23 18:10 去年
- 此快照最后确认于
- 2024/11/23 20:41 去年
数组尽力开最大了 还没什么用
CPP#include <bits/stdc++.h>
using namespace std;
int n, m, ans;
vector <int> p[100005];
bool visited[100005];
int match[100005], ansg[100005];
bool dfs(int u)
{
for(auto v : p[u])
{
if(!visited[v])
{
visited[v] = 1;
if(!match[v] || dfs(match[v]))
{
match[v] = u;
ansg[u] = v;
// cout << u << ' ' << v << '\n';
return 1;
}
}else{
continue;
}
}
return 0;
}
int main()
{
cin >> n >> m;
for(int i = 1;i <= m; i++)
{
int u, v;
cin >> u >> v;
p[i].push_back(v);
if(u!=v)p[i].push_back(u);
}
for(int i = 1;i <= m; i++)
{
if(dfs(i))
ans++;
else
break;
for(int i = 1;i <= 100001; i++)
visited[i] = 0;
}
cout << ans << '\n';
for(int i = 1;i <= ans; i++)
{
cout << ansg[i] << '\n';
}
return 0;
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...