GOJ1446 并查集判断逻辑错误(是否说谎)

这道题暑假做过,但是忘了。

思路:因为无法直接将输入的两个数放到一个并查集,所以可以让对应的数字与足够远但是又能够一一对应回来的数做联合。

#include
#include
#include
#include
using namespace std;
int n,l,k,a,b,vis;

int main(){
   scanf("%d",&n);
   for(int i=0;i t;
    map::iterator it1;
    map::iterator it2;
    //memset(t,-1,sizeof(t));
    scanf("%d %d",&l,&k);
    for(int j=0;j

你可能感兴趣的:(并查集,思维)