import "fmt"
func main() {
var sizeArr int
fmt.Scan(&sizeArr)
arr := make([]int, sizeArr)
for i := 0; i < sizeArr; i++ {
fmt.Scan(&arr[i])
}
fmt.Println(countUnique(arr))
}
func countUnique(arr []int) int {
count := 0
sizeArr := len(arr)
for i := 0; i < sizeArr; i++ {
temp := true
for j := 0; j < sizeArr; j++ {
if i != j && arr[i] == arr[j] {
temp = false
break
}
}
if temp {
count++
}
}
return count
}
写了测试:
{[]int{1, 1, 1, 1, 1}, 0},
{[]int{1, 2, 2, 3, 4, 4, 5}, 3},
{[]int{1, 2, 3, 4, 4, 5, 5, 6}, 4},
{[]int{}, 0},
{[]int{100, -100, 100, 200, -200}, 3},
{[]int{1, 1, 2, 3, 4, 5, 5}, 3},
{[]int{-1, -2, -2, 1, 2, 2}, 2},
{[]int{0, 1, 1, 1, 1}, 1},
{[]int{-2, -100, -2, -100, 0}, 1},
{[]int{-100, -100, -2, -100, 0}, 2},
{[]int{-100, -100, 2, -100, 0}, 2},
{[]int{1, 1, 1, 2, 2, 2, 3, 3, 3, 5}, 1},
{[]int{0, 0, 0, 0, 0, 0, 0, 0, 0, 1}, 1},
{[]int{0, 0, 1, 1, 0}, 0},
但在平台上,在一些封闭测试中,它崩溃了:超出时间限制 - 2 s - 4.64 MB 告诉我该往哪个方向看......我已经伤透了脑筋。
