本题我在读入的时候,本来是这样的写法
For( i , 1 , k ){
read( x_ ) , read( a_ ) , read( b_ );
if( x_ == 1 ){
addedge( a_ , b_ , 0 );
addedge( b_ , a_ , 0 );
}
else if( x_ == 2 && a_ != b_ )
addedge( a_ , b_ , 1 );
else if( x_ == 3 )
addedge( b_ , a_ , 0 );
else if( x_ == 4 && a_ != b_ )
addedge( b_ , a_ , 1 );
else if( x_ == 5 )
addedge( a_ , b_ , 0 );
else{
puts( "-1" );
exit( 0 );
}
}
在这个输入下我TLE #6 如果我换成这样的读入
For( i , 1 , k ){
read( x_ ) , read( a_ ) , read( b_ );
if( x_ == 1 ){
addedge( a_ , b_ , 0 );
addedge( b_ , a_ , 0 );
}
else if( x_ == 2 )
addedge( a_ , b_ , 1 );
else if( x_ == 3 )
addedge( b_ , a_ , 0 );
else if( x_ == 4 )
addedge( b_ , a_ , 1 );
else if( x_ == 5 )
addedge( a_ , b_ , 0 );
if( x_ & 1 == 0 && a_ == b_ ){
puts( "-1" );
exit( 0 );
}
}
我就TLE #5 #6 求解决QwQ 完整代码: https://paste.ubuntu.com/p/sJXWCrw2HX/