QCoderは、量子アルゴリズムについてのプログラミングコンテストです。
随時過去の大会の解説を更新していきます。
以下は、どのような順番で何を習うことになるのか、という概観です。
まずはPythonについて学び、for文やwhile文、if文を書けるようにしよう。また、関数についても理解しておこう。
次に、基礎的な1ビットゲート、および2ビットゲートについて覚えよう。
そしたら、ryゲートについて学ぼう。これで、thetaをmathを使って計算することで、係数をより柔軟に扱うことができる。
次に、circuitのdepthという概念が出てくる。これは、古典アルゴリズムのBig-O notationのようなものである。この制限を克服するために、二部探索木のような考え方を試行錯誤する必要がある。
その後は、qiskit.circuit.libraryの Gate が必要になる。これは、Multi-Control Gateを作ることを実現してくれる。
なお、Qiskitをインストールして実行できるようにすると、Code Testができて良い。以下、自分がテストの際使用しているコードである。

今後どの問題を解説してほしいか、リクエストがあればコメントにどうぞ!
コメント