A2: Encoding

実行時間制限:3 秒

メモリ制限:512 MiB

配点:200点

問題文

次の条件を満たすオラクル OO を、33 量子ビットをもつ量子回路 qc\mathrm{qc} 上に実装せよ。

∣000⟩→O∣000⟩∣100⟩→O∣111⟩\begin{aligned} \ket{000} &\xrightarrow{O} \ket{000} \\ \ket{100} &\xrightarrow{O} \ket{111} \end{aligned}

ただし、∣000⟩\ket{000} と ∣100⟩\ket{100} 以外の入力に対する OO の出力は問わない。

制約

from qiskit import QuantumCircuit
 
 
def solve() -> QuantumCircuit:
    qc = QuantumCircuit(3)
    # Write your code here:
 
    return qc

ヒント

開く
  • 次のようにして、何らかの量子ゲート Gate\mathrm{Gate} の 複数制御ゲートを作用させることができます。
from qiskit.circuit.library import Gate
 
qc.append(Gate().control(n - 1), range(n))

解答を提出するにはログインしてください。