AT 上 AC 35个,TLE3个,求调
查看原帖
AT 上 AC 35个,TLE3个,求调
930104
Naegi_Makoto楼主2023/9/23 16:52
#include<bits/stdc++.h>
using namespace std;
vector<int> e[200005];
int n,m;
bool vis[200005];
bool f;
void dfs( int x, int fa ){
	vis[x] = 1;
	for( int i = 0; i < e[x].size() && !f; i++ ){
		int y = e[x][i];
		if( y == fa ) continue;
		if( vis[y] == 1 ){
			f = 1;
			return;	
		}
		dfs( y,x );			
	}
	vis[x] = 0;
}
int main(){
	
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	
	cin >> n >> m;
	for( int i = 1; i <= m; i++ ){
		int a,b;
		cin >> a >> b;
		e[a].push_back( b );
		e[b].push_back( a );
	}
	for( int i = 1; i <= n; i++ )
		if( e[i].size() >= 3 ){
			cout << "No" << '\n';
			return 0;
		}
	for( int i = 1; i <= n && !f; i++ )
		if( e[i].size() )
			dfs( i,0 );
	if( !f )
		cout << "Yes";
	else
		cout << "No";
	return 0;
}
2023/9/23 16:52
加载中...