QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#768866#9525. Welcome to Join the Online Meeting!wk6_RE 14ms106024kbC++171.6kb2024-11-21 14:57:152024-11-21 14:57:16

Judging History

你现在查看的是最新测评结果

  • [2024-11-21 14:57:16]
  • 评测
  • 测评结果:RE
  • 用时:14ms
  • 内存:106024kb
  • [2024-11-21 14:57:15]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define inf 0x3f3f3f3f3f3f3f3f
#define PII pair<int, int>
const int N = 2e6 + 10;
int n, m, k, pr[N], a[N];
int find(int x) {
	if (pr[x] == x)return x;
	return pr[x] = find(pr[x]);
}
void join(int x, int y) {
	int fx = find(x), fy = find(y);
	if (fx != fy) {
		pr[fx] = fy;
	}
}
vector<int>g[N], ans[N];
int vis[N], idd[N], st[N], tot;
void dfs(int now) {
	vis[now] = 1;
	if (st[now])return ;
	idd[++tot] = now;
	for (auto i : g[now]) {
		if (vis[i])continue;
		dfs(i);
		ans[now].push_back(i);
	}
}
void solve() {
	cin >> n >> m >> k;
	map<int, int>mp;
	for (int i = 1; i <= n; i++)pr[i] = i;
	for (int i = 1; i <= k; i++) {
		cin >> a[i];
		st[a[i]] = 1;
	}
	for (int i = 1; i <= m; i++) {
		int u, v;
		cin >> u >> v;
		g[u].push_back(v);
		g[v].push_back(u);
	}
	int fa = 0;
	for (int i = 1; i <= n; i++) {
		if (!st[i]) {
			fa = i;
			break;
		}
	}
	dfs(fa);
	for (int i = 1; i <= n; i++) {
		if (!vis[i]) {
			cout << "No" << endl;
			return ;
		}
	}
	int num = 0;
	for (int i = 1; i <= tot; i++) {
		int tmp = idd[i];
		if (!ans[tmp].size())num++;
	}
	cout << "Yes" << endl << tot - num << endl;
	for (int i = 1; i <= tot; i++) {
		int tmp = idd[i];
		if (!ans[tmp].size())continue;
		cout << tmp << " " << ans[tmp].size() << " ";
		for (int j = 0; j < ans[tmp].size(); j++) {
			cout << ans[i][j] << " ";
		}
		cout << endl;
	}
}
signed main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
//	cin >> _;
	while (_--) {
		solve();
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 8ms
memory: 106024kb

input:

4 5 2
3 4
1 2
1 3
2 3
3 4
2 4

output:

Yes
2
1 1 2 
2 2 3 4 

result:

ok ok

Test #2:

score: 0
Accepted
time: 12ms
memory: 105972kb

input:

4 5 3
2 4 3
1 2
1 3
2 3
3 4
2 4

output:

No

result:

ok ok

Test #3:

score: 0
Accepted
time: 7ms
memory: 104224kb

input:

4 6 2
3 4
1 3
1 4
2 3
2 4
1 2
3 4

output:

Yes
1
1 3 3 4 2 

result:

ok ok

Test #4:

score: 0
Accepted
time: 14ms
memory: 105976kb

input:

6 6 0

1 2
2 3
3 1
4 5
5 6
6 4

output:

No

result:

ok ok

Test #5:

score: -100
Runtime Error

input:

200000 199999 2
142330 49798
49798 116486
116486 64386
64386 192793
192793 61212
61212 138489
138489 83788
83788 89573
89573 8596
8596 156548
156548 41800
41800 14478
14478 27908
27908 82806
82806 9353
9353 160166
160166 92308
92308 36265
36265 126943
126943 190578
190578 191148
191148 177381
177381...

output:

Yes
199998
1 2 95113 178679 
95113 1 198122 
27292 1 41738 
93394 1 196324 
30051 1 91673 
174891 1 796 
165580 1 136018 
94294 1 100182 
123410 1 101606 
55130 1 73864 
154872 1 105951 
166138 1 63827 
30681 1 130553 
51031 1 177897 
89161 1 196567 
187764 1 92389 
14291 1 72182 
66035 1 141202 
83...

result: