QCoder

量子コンピューティング

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ができて良い。以下、自分がテストの際使用しているコードである。

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

コメント

タイトルとURLをコピーしました