[Перевод] Попробуй себя в программировании на Q#

У команды Microsoft Quantum Team хорошие новости для любителей квантовых вычислений и программистов, желающих бросить себе вызов. Мы рады сообщить о проведении летнего конкурса Microsoft по программированию на Q# — Microsoft Q# Coding Contest — Summer 2018! Приняв участие в нем, вы сможете отточить свои навыки в области квантового программирования, решая задачи различной сложности с помощью языка квантового программирования Q#. Победители получат футболки Microsoft Quantum!

tih22hv7a7cedhrb_e2rls1jkom.jpeg

Квантовые вычисления — это принципиально новый подход к программированию, имеющий мало схожего с классическими вычислениями. Они так сильно отличаются, что некоторые задачи, которые в классических моделях считаются неразрешимыми (например, факторизация целых чисел, вычисление дискретных логарифмов на эллиптических кривых или имитация физических систем), могут быть эффективно решены на квантовом компьютере. Недавно компания Microsoft представила набор инструментов Quantum Development Kit, который включает новый язык программирования Q#, способный облегчить освоение новой среды для классических программистов. Q# встраивается в среды разработки Visual Studio или Visual Studio Code и доступен как инструмент командной строки. Visual Studio Code позволяет разрабатывать приложения под Windows, macOS и Linux.

Конкурс будет проходить с 6 по 9 июля и предложит участникам решить задачи разной сложности по вводным темам из области квантовых вычислений: суперпозиция, измерение, оракулы и простые алгоритмы.

Правила конкурса


  • Конкурс будет содержать 12 заданий различного уровня сложности.
  • Для решения каждой задачи необходимо написать код на языке Q#, который позволит совершить описанные преобразования заданного набора кубитов или проанализировать состояние такого набора. Принимаются только решения, написанные на Q#.
  • Решение считается правильным, если оно проходит предварительно определенный набор тестов. Вскоре после сдачи решения вы сможете узнать свой результат.
  • Участники оцениваются по числу правильно решенных задач.
  • В случае ничьей победитель определяется в зависимости от общего количества штрафного времени, полученного участниками при решении всех задач. Штрафное время высчитывается следующим образом: за каждую решенную задачу начисляется штраф в зависимости от количества времени, прошедшего с момента начала конкурса; за каждое неверное решение накладывается дополнительный штраф в 20 минут (если вам не удалось решить задачу, штраф накладываться не будет).
  • Лучшие 50 участников получат футболку Microsoft Quantum.
  • НЕ ТРЕБУЕТСЯ ПЛАТЕЖЕЙ. Участники должны быть в возрасте 16 лет или старше. Конкурс заканчивается 9 июля 2018 года. Более подробную информацию см. в официальных правилах.

С 29 июня по 2 июля мы проводили разминочный раунд, где были представлены более простые задачи по тем же темам, что и в основном конкурсе. Участие в разминочном раунде необязательно. Разминочный раунд давал возможность заранее ознакомиться с условиями конкурса и системой отправки решений, а также освежить знания или изучить основы квантовых вычислений и языка Q#. Через 24 часа после его начала мы опубликовали решения и разъяснения для трех самых простых задач. После завершения раунда мы опубликовали статью на странице конкурса, в которой раскрыли логику квантовых вычислений, стоящую за решением, а также методику применения Q#.

Чтобы начать, обратитесь к инструкции по установке Q# и справочным материалам по этому языку.

Материалы по квантовым вычислениям и Q#


Для тех, кто пользуется Codeforces впервые


  1. Создать учетную запись можно здесь.
  2. Зарегистрироваться для участия в разминочном раунде можно здесь.
  3. Зарегистрироваться для участия в конкурсе можно здесь.
  4. После начала разминочного раунда 29 июня задачи и дополнительные материалы конкурса станут доступны по этому адресу.
  5. После начала конкурса 6 июля задачи станут доступны здесь.

Удачи! Мы надеемся, что вы получите удовольствие от конкурса!

© Habrahabr.ru