For problem statement at 1000-1999/1000-1099/1000-1009/1002/problemD2.txt this is a correct solution, but verifier at 1000-1999/1000-1099/1000-1009/1002/verifierD2.go ends with target runtime error on test 1: runtime error: fork/exec /tmp/build-372140356/solution: permission denied
input:
1
0
exit status 1 can you fix the verifier? package answer
type Qubit bool
func X(q Qubit) Qubit {
return !q
}
func CNOT(control Qubit, target Qubit) Qubit {
if control {
return !target
}
return target
}
func Oracle(x []Qubit, y Qubit, b []int) {
for i := 0; i < len(x) && i < len(b); i++ {
if b[i] == 0 {
x[i] = X(x[i])
}
y = CNOT(x[i], y)
if b[i] == 0 {
x[i] = X(x[i])
}
}
}