Skip to content

Instantly share code, notes, and snippets.

@rpplusplus
Last active May 10, 2017 06:56
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rpplusplus/b164c17809f1dbc9743d35c6db97b82c to your computer and use it in GitHub Desktop.
Save rpplusplus/b164c17809f1dbc9743d35c6db97b82c to your computer and use it in GitHub Desktop.
for a1 in 0..<4 {
for a2 in 0..<4{
for a3 in 0..<4 {
for a4 in 0..<4 {
for a5 in 0..<4 {
for a6 in 0..<4 {
for a7 in 0..<4 {
for a8 in 0..<4 {
for a9 in 0..<4 {
for a10 in 0..<4 {
if a2 == 0 && a5 != 2 {
continue
}
if a2 == 1 && a5 != 3 {
continue
}
if a2 == 2 && a5 != 0 {
continue
}
if a2 == 3 && a5 != 1 {
continue
}
if a3 == 0 && !(a3 != a6 && a3 != a2 && a3 != a4) {
continue
}
if a3 == 1 && !(a6 != a3 && a6 != a2 && a6 != a4) {
continue
}
if a3 == 2 && !(a2 != a3 && a2 != a6 && a2 != a4) {
continue
}
if a3 == 3 && !(a4 != a3 && a4 != a2 && a4 != a6) {
continue
}
if a4 == 0 && a1 != a5 {
continue
}
if a4 == 1 && a2 != a7 {
continue
}
if a4 == 2 && a1 != a9 {
continue
}
if a4 == 4 && a6 != a10 {
continue
}
if a5 == 0 && a8 != 0 {
continue
}
if a5 == 1 && a4 != 1 {
continue
}
if a5 == 2 && a9 != 2 {
continue
}
if a5 == 3 && a7 != 3 {
continue
}
if a6 == 0 && !(a2 == a4 && a2 == a8) {
continue
}
if a6 == 1 && !(a1 == a6 && a1 == a8) {
continue
}
if a6 == 2 && !(a3 == a10 && a8 == a3) {
continue
}
if a6 == 3 && !(a8 == a5 && a5 == a9) {
continue
}
var arr = [0, 0, 0, 0]
arr[a1] += 1
arr[a2] += 1
arr[a3] += 1
arr[a4] += 1
arr[a5] += 1
arr[a6] += 1
arr[a7] += 1
arr[a8] += 1
arr[a9] += 1
arr[a10] += 1
var vmin = 11
var vmax = -1
for (index, item) in arr.enumerated() {
if vmin > item {
vmin = item
}
if vmax < item {
vmax = item
}
}
if a7 == 0 && arr[2] != vmin {
continue
}
if a7 == 1 && arr[1] != vmin {
continue
}
if a7 == 2 && arr[0] != vmin {
continue
}
if a7 == 3 && arr[3] != vmin {
continue
}
if a8 == 0 && abs(a1 - a7) == 1 {
continue
}
if a8 == 1 && abs(a1 - a5) == 1 {
continue
}
if a8 == 2 && abs(a1 - a2) == 1 {
continue
}
if a8 == 3 && abs(a1 - a10) == 1 {
continue
}
if a9 == 0 && a1 == a6 && a5 == a6 {
continue
}
if a9 == 0 && a1 != a6 && a5 != a6 {
continue
}
if a9 == 1 && a1 == a6 && a5 == a10 {
continue
}
if a9 == 1 && a1 != a6 && a5 != a10 {
continue
}
if a9 == 2 && a1 == a6 && a5 == a2 {
continue
}
if a9 == 2 && a1 != a6 && a5 != a2 {
continue
}
if a9 == 3 && a1 == a6 && a5 == a9 {
continue
}
if a9 == 3 && a1 != a6 && a5 != a9 {
continue
}
if a10 == 0 && vmax - vmin != 3 {
continue
}
if a10 == 1 && vmax - vmin != 2 {
continue
}
if a10 == 2 && vmax - vmin != 4 {
continue
}
if a10 == 3 && vmax - vmin != 1 {
continue
}
print(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)
}
}
}
}
}
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment