Решения задачи с Ulearn

Практика «Монобильярд»

Скачайте проект Monobilliards

Стол для монобильярда, установленный в игровом доме уездного города N, оказался очень прибыльным вложением. До того, как в городе появился небезызвестный господин Чичиков. Раз за разом он выигрывал, и хозяин, подсчитывая убытки, понимал, что дело тут нечисто. Однако уличить подлеца в жульничестве не удавалось до прибытия в город N ревизора из Петербурга.

Правила игры в монобильярд очень просты: нужно последовательно закатить в единственную лузу шары с номерами 1, 2, …, N (именно в этом порядке). Пока господин Чичиков играл, ревизор несколько раз подходил к столу и забирал из лузы последний закатившийся туда шар. В конце концов, оказалось, что Чичиков закатил в лузу все шары, а ревизор все шары достал и обследовал. Аферист утверждал, что закатил шары в правильном порядке. Хозяин понял, что это его шанс: ревизор должен помнить, в каком порядке он доставал шары. Однако так ли легко будет доказать жульничество?

Оформление решения

В классе Monobillards реализуйте метод IsCheater, на вход которому подается список шаров в порядке извлечения их из лузы ревизором. Верните true, если Чичиков не мог закатить шары в правильном порядке. Иначе верните false.

Источник задачи — acm.timus.ru

В этой и последующих задачах тесты созданы с помощью фреймворка NUnit. Чтобы запускать эти тесты из VisualStudio вам нужно либо установить NUnit Test Adapter (Tools — Extensions and Updates — Online — NUnit Test Adapter), либо использовать возможности Resharper — плагина к Visual Studio.

Стоимость решения этой задачи всего 100 рублей, закажи решения у меня 🙂

Обновлено: 02.10.2018 — 21:30

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.