题解 | #明明的随机数#

明明的随机数

https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0

package main

import (
	"fmt"
	"sort"
)

func removeDuplicatesAndSort(numbers []int) []int {
	dict := make(map[int]bool)
	result := []int{}

	// 遍历数组,将数字添加到字典中
	for _, num := range numbers {
		dict[num] = true
	}

	// 提取字典中的键(唯一数字)
	for num := range dict {
		result = append(result, num)
	}

	// 对结果进行排序
	sort.Ints(result)

	return result
}

func main() {
	var N int
	fmt.Scan(&N)

	numbers := make([]int, N)
	for i := 0; i < N; i++ {
		fmt.Scan(&numbers[i])
	}

	result := removeDuplicatesAndSort(numbers)

	// 输出结果
	for _, num := range result {
		fmt.Println(num)
	}
}

正确示例:

首先,输入随机整数的个数N,然后输入N个整数。接下来,代码会调用removeDuplicatesAndSort函数来删除重复数字并按照升序排序。最后,打印排序后的结果。

错误示例:

package main

import (
	"fmt"
	"math/rand"
	"time"
)

func main() {
	var input int
	fmt.Scan(&input)
	// 随机种子生成器
	rand.Seed(time.Now().UnixNano())
	arr := make([]int, 0, input)
	for i := 0; i < input; i++ {
		// fmt.Println(rand.Intn(500) + 1)
		num := rand.Intn(500) + 1
		arr = append(arr, num)
	}
    sort.Ints(arr)
	fmt.Println(arr)
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务