module Meth where
import System.Random
import Data.List
type Dom = (Int,Int)
gen :: StdGen
gen = mkStdGen 10
dominoes :: [Dom]
dominoes = [(x, y)| x <- [0..6], y <- [x..6]]
shuffles:: StdGen->[Int]
shuffles g = take 28 $ randoms g :: [Int]
我创建了一个包含28个随机数字的列表,我想用我的[Dom]列表压缩它并对其进行排序。我不知道如何从这一点开始
答案 0 :(得分:1)
假设您想根据数字对其进行排序,您只需创建一个使用zip
然后使用sortBy
来获取结果的函数:
result :: StdGen -> [(Dom, Int)]
result g =
let zipped = zip dominoes (shuffles g)
in sortBy (compare `on` snd) zipped