e7738de6d2
CI / Deep Native Runtime Cases (1/6) (push) Has been skipped
CI / Native Preflight (push) Failing after 1s
CI / Native Runtime Cases (1/2) (push) Failing after 0s
CI / Native Runtime Cases (2/2) (push) Failing after 1s
CI / Native Metadata Reports (push) Failing after 0s
CI / Native Direct Backend Artifacts (push) Failing after 0s
CI / Native Sanitizer Smoke (push) Failing after 1s
CI / Command Contract Snapshots (push) Failing after 1s
CI / Deep Conformance Suite (push) Has been skipped
CI / Graph Build Perf (push) Failing after 1s
CI / Deep Native Preflight (push) Has been skipped
CI / Deep Native Runtime Cases (2/6) (push) Has been skipped
CI / Deep Native Runtime Cases (3/6) (push) Has been skipped
CI / Conformance Suite (push) Failing after 1s
CI / Workspace Checks (push) Failing after 0s
CI / Deep Native Runtime Cases (5/6) (push) Has been skipped
CI / Deep Native Runtime Cases (6/6) (push) Has been skipped
CI / Deep Native Runtime Cases (4/6) (push) Has been skipped
CI / Deep Graph Build Perf (push) Has been skipped
48 lines
921 B
Plaintext
48 lines
921 B
Plaintext
fn pow10(exp: u32) -> u32 {
|
|
var result: u32 = 1
|
|
var i: u32 = 0
|
|
while i < exp {
|
|
result = result * 10
|
|
i = i + 1
|
|
}
|
|
return result
|
|
}
|
|
|
|
fn digitCount(n0: u32) -> u32 {
|
|
var n: u32 = n0
|
|
var count: u32 = 0
|
|
while n > 0 {
|
|
count = count + 1
|
|
n = n / 10
|
|
}
|
|
return count
|
|
}
|
|
|
|
fn cyclops(n: u32) -> Bool {
|
|
let count: u32 = digitCount(n)
|
|
if count % 2 == 0 {
|
|
return false
|
|
}
|
|
let mid: u32 = count / 2
|
|
if n / pow10(mid) % 10 != 0 {
|
|
return false
|
|
}
|
|
var value: u32 = n
|
|
var pos: u32 = 0
|
|
while pos < count {
|
|
let digit: u32 = value % 10
|
|
if pos != mid && digit == 0 {
|
|
return false
|
|
}
|
|
value = value / 10
|
|
pos = pos + 1
|
|
}
|
|
return true
|
|
}
|
|
|
|
pub fn main(world: World) -> Void raises {
|
|
if cyclops(105) && !cyclops(100) {
|
|
check world.out.write("cyclops ok\n")
|
|
}
|
|
}
|