GITLAB

Hermes / api-game

Sign in
  • Sign in
  • Project
  • Files
  • Commits
  • Network
  • Graphs
  • Issues 0
  • Merge Requests 0
  • Wiki
  • api-game_qianyi
  • util
  • utmisc
  • random.go
  • 9ac6f905   feat✨:机器人的ID和名字不重复算法 Browse Code »
    王家文
    2024-04-30 02:39:42 +0800  
random.go 395 Bytes
Edit Raw Blame History Permalink
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
package utmisc

import "math/rand"

func RandomMultiple(count, minNum, maxNum int) []int {
	list := make([]int, 0)
	if maxNum > minNum {
		if count > maxNum-minNum {
			count = maxNum - minNum
		}
		m := make(map[int]struct{})
		for len(m) < count {
			v := minNum + rand.Intn(maxNum-minNum)
			if _, ok := m[v]; !ok {
				m[v] = struct{}{}
				list = append(list, v)
			}
		}
	}
	return list
}