Quick actions

cmd+k|ctrl+k

Navigation

Languages

test duplicate and unit

Snippet info

Language

Go

Visibility

public

Author

nico-latena

Created

2022-06-16T23:18:11.953601Z

Updated

2022-06-16T23:18:26.633923Z

package main

import (
	"fmt"
)

// analyzeNames will return unique and duplicated names
func analyzeNames(names ...[]string) (unique, duplicated []string) {
	// fill your code here

	fmt.Println(names[0])

	arr1 := names[0]
	arr2 := names[1]
	for i := 0; i < len(arr1); {
		exist := false
		for _, b := range arr2 {
			if b == arr1[i] {
				exist = true
				break
			}
		}
		if !exist {
			arr1 = append(arr1[:i], arr1[i+1:]...) // delete arr1[i]
		} else {
			i++
		}
	}
	fmt.Println(arr1) // [F5 F7 C6 G5]

	return
}

func main() {
	// expected result : ["Ava", "Sophia"], ["Emma", "Olivia"]
	fmt.Println(analyzeNames(
		[]string{"Ava", "Emma", "Olivia"},
		[]string{"Olivia", "Sophia", "Emma"}),
	)

	// expected result : ["Sophia"], ["Ava", "Emma", "Olivia"]
	fmt.Println(analyzeNames(
		[]string{"Ava"},
		[]string{"Olivia", "Sophia", "Emma", "Olivia"},
		[]string{"Emma", "Ava"}),
	)

	// expected result : [], []
	fmt.Println(analyzeNames())
}
INFO