Skip to content

Instantly share code, notes, and snippets.

@iidaatcnt
Last active August 29, 2015 14:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save iidaatcnt/77e4b41c4a7d47512337 to your computer and use it in GitHub Desktop.
Save iidaatcnt/77e4b41c4a7d47512337 to your computer and use it in GitHub Desktop.
+とーを使った小町算の数式を全表示せよ
#!/usr/bin/env xcrun swift
var i = 0
var s = 0
var sign : [Int] = []
var n = 0
var x = 0
sign.append(0)
for var i = 1; i <= 9; ++i {
sign.append(-1)
}
do {
x = 0
n = 0
s = 1
for i = 1; i <= 9; i++ {
if (sign[i] == 0) {
n = 10 * n + i
} else {
x += s * n
s = sign[i]
n = i
}
}
x += s * n
if (x == 100) {
for i = 1; i <= 9; i++ {
if (sign[i] == 1) {
print(" + ")
} else if (sign[i] == -1) {
print(" - ")
}
print(i)
}
println(" = 100")
}
i = 9
s = sign[i] + 1
while ( s > 1 ) {
sign[i] = -1
i--
s = sign[i] + 1
}
sign[i] = s;
} while ( sign[1] < 1 )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment