package main import ( "bufio" "fmt" "os" "strconv" "github.com/monkukui/ac-library-go/dsu" ) func main() { sc := bufio.NewScanner(os.Stdin) sc.Buffer(make([]byte, 1<<20), 1<<20) sc.Split(bufio.ScanWords) next := func() int { sc.Scan() x, _ := strconv.Atoi(sc.Text()) return x } n, m := next(), next() d := dsu.New(n) for i := 0; i < m; i++ { u := next() v := next() d.Merge(u, v) } c := 0 for i := 0; i < n; i++ { if d.Leader(i) == i { c++ } } fmt.Println(c) }