40 lines
598 B
Go
40 lines
598 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"math/rand"
|
|
)
|
|
|
|
const (
|
|
R = 64
|
|
N = 64
|
|
)
|
|
|
|
func rnd(max int) (r [R*N + 1]uint8) {
|
|
rn := rand.New(rand.NewSource(0))
|
|
for i := 0; i < R*N+1; i++ {
|
|
r[i] = uint8(rn.Intn(max))
|
|
if i > 1 && r[i-1] == r[i] {
|
|
r[i] = (r[i] + 1) % N
|
|
}
|
|
}
|
|
return
|
|
}
|
|
|
|
func main() {
|
|
fmt.Println("package goxifrat\n")
|
|
fmt.Println("var rn = [R*N + 1]uint8{")
|
|
r := rnd(N)
|
|
for i := 0; i < 128; i++ {
|
|
fmt.Print(" ")
|
|
for j := 0; j < 32; j++ {
|
|
fmt.Printf("%d,", r[i+j])
|
|
if j < 31 {
|
|
fmt.Print(" ")
|
|
}
|
|
}
|
|
fmt.Println()
|
|
}
|
|
fmt.Printf(" %d,\n", r[4096])
|
|
fmt.Println("}")
|
|
}
|