Sha256: 134400280b646c13209dca5c4591f9f83ba41b9c58dafd1c81f90f834675ad8a
Contents?: true
Size: 460 Bytes
Versions: 56
Compression:
Stored size: 460 Bytes
Contents
package cryptosquare import ( "math" "strings" ) func norm(r rune) rune { switch { case r >= 'a' && r <= 'z' || r >= '0' && r <= '9': return r case r >= 'A' && r <= 'Z': return r + 'a' - 'A' } return -1 } func Encode(pt string) string { pt = strings.Map(norm, pt) numCols := int(math.Ceil(math.Sqrt(float64(len(pt))))) cols := make([]string, numCols) for i, r := range pt { cols[i%numCols] += string(r) } return strings.Join(cols, " ") }
Version data entries
56 entries across 56 versions & 1 rubygems