func intersection(nums1 []int, nums2 []int) (res []int) { m := make(map[int]int) for _, n := range nums1 { m[n] |= 1 } for _, n := range nums2 { m[n] |= 2 } for k, v := range m { if v == 3 { res = append(res, k) } } return }