U130175 myf与前女友

题目描述

众所周知,myf的前女友加起来能绕地球一群,现在myf有$n$个女朋友,编号为1到$n$,他认为一个个聊天很麻烦,所以他想把前女友进行分类,他按照下面3种操作把前女友进行分类 - 1 $u$ $v$,将$u$和$v$加入同一个讨论群 - 2 $u$ $v$,将$u$从原有的讨论群删除,加入到$v$所在的讨论群 - 3 $u$ $v$,询问$u$和$v$是否处于同一个讨论群 如果前女友$a$和前女友$b$在同一个讨论群,且前女友$b$和前女友$c$在同一个讨论群,那么前女友$a$和前女友$c$也在同一个群。 最后,myf想知道他创建了几个讨论群。

输入格式

第一行2个整数,$n,m$分别代表myf前女友的个数和操作数 接下来$m$行,每行3个整数$op,u,v$,其中$op\in[1,2,3]$,$u,v$表示前女友的编号 保证所有操作合法

输出格式

对于每一个操作3进行回答,如果处于同一个讨论群,那么输出"YES",否则输出"NO" 最后一行输出一个整数,表示myf所有操作后,前女友的讨论群数目。(一个人也算一个讨论群)

说明/提示

$2≤n≤10^5, 0≤m≤ 10^5, 1≤u,v≤n$