Microsoft's Quantum team is excited to announce the Q# Coding Contest – Summer 2020, the third in the series of Q# contests! In this contest you can put your quantum programming skills to the test, solving quantum computing tasks in Q#. The winners (as well as some lucky participants) will receive a Microsoft Quantum T-shirt!
Quantum computing is a radically different computing paradigm compared to classical computing. Indeed, it is so different that some tasks that are believed to be classically intractable (such as factoring integers or simulating physical systems) can be performed efficiently on a quantum computer. In December 2017 Microsoft introduced the Quantum Development Kit which includes the Q# programming language.
In summer of 2018 we hosted the first quantum programming contest, which included problems on introductory topics in quantum computing: superposition, measurement, quantum oracles and simple algorithms. In winter of 2019 we hosted the second quantum programming contest, which offered harder problems on those topics plus some tasks on implementing unitary transformations. This contest will introduce new types of tasks, as well as some twists on the previous ones.
The contest will run from June 19 to June 22. As usual, we will hold a warmup round the weekend before the contest, from June 12 to June 15, to give you an opportunity to get familiar with the contest environment and submission system before the main contest. Participation in the warmup round is optional.
Good luck! We hope you enjoy the contest!
The rules of the contest are:
- The main contest and the warmup round will have several tasks of various complexity levels.
- To solve each task, you will write Q# code to implement the described task. Solutions are accepted in Q# only.
- The solution is correct if it passes all tests from a predefined test set. You will know whether the solution is correct soon after submitting it.
- Participants are ranked according to the number of correctly solved tasks.
- Ties are resolved based on lowest penalty time for all tasks, which is computed as the latest submission time (the time since the start of the contest) for any of the correctly solved tasks. There is no penalty for failed submissions.
- The contest and the warmup round will award T-shirts as follows:
- The top 50 ranked participants in the main contest will receive a Microsoft Quantum T-shirt.
- Random 25 participants of the main contest who solved at least one problem but didn't finish in the top 50 will receive a Microsoft Quantum T-shirt.
- Random 25 participants of the warmup round who solved at least one problem but didn't win a T-shirt in the main contest will receive a Microsoft Quantum T-shirt.
- All T-shirt winners will be selected after the end of the main contest. T-shirt designs will be announced later :-)
- NO PURCHASE NECESSARY. Must be 16 years of age or older. Game ends 06/22/20. For details, see the Official Rules.
For first time Codeforces users:
- Create user account here.
- Register for the warmup round here.
- Register for the contest here.
- Once the warmup round starts on June 12, access the problems here.
- Once the contest starts on June 19, access the problems here.
Quantum computing and Q# materials:
- The Quantum Katas — a collection of tutorials and programming exercises that help you learn quantum computing and Q# (includes most of the problems from previous contests).
- A collection of awesome quantum computing learning resources, including MOOCs and books.
- A collection of awesome Q# resources.
- Q# installation instructions and documentation.
- Microsoft Q# Coding Contest — Summer 2018 and Warmup Round.
- Microsoft Q# Coding Contest — Winter 2019 and Warmup Round.
Note that this contest will use Q# 0.11.2004.2825, while the previous contests used Q# 0.2 and Q# 0.4, respectively. We've updated the test harnesses from the previous contests to support the latest version of Q#, so you can use them for practice.
Update: The warmup round is over, here is the editorial for the problems. You should be able to see other people's solutions and practice now.