0 added
0 removed
Original
2026-01-01
Modified
2026-02-21
1
<p><a>#Тесты</a></p>
1
<p><a>#Тесты</a></p>
2
<ul><li>13 сен 2021</li>
2
<ul><li>13 сен 2021</li>
3
<li>0</li>
3
<li>0</li>
4
</ul><h2>Задача про директора и график смен программистов</h2>
4
</ul><h2>Задача про директора и график смен программистов</h2>
5
<p>Логическая задача на метод исключения. Разбираемся с репетитором.</p>
5
<p>Логическая задача на метод исключения. Разбираемся с репетитором.</p>
6
<p>Roungroat/ Rawpixel / Annie для Skillbox</p>
6
<p>Roungroat/ Rawpixel / Annie для Skillbox</p>
7
<p>Автор статей о программировании. Изучает Python, разбирает сложные термины и объясняет их на пальцах новичкам. Если что-то непонятно - возможно, вы ещё не прочли его следующую публикацию.</p>
7
<p>Автор статей о программировании. Изучает Python, разбирает сложные термины и объясняет их на пальцах новичкам. Если что-то непонятно - возможно, вы ещё не прочли его следующую публикацию.</p>
8
<p>Преподаватель математики, автор YouTube-канала "Математика с Аней" и соавтор учебников и методических рекомендаций к учебникам по математике.</p>
8
<p>Преподаватель математики, автор YouTube-канала "Математика с Аней" и соавтор учебников и методических рекомендаций к учебникам по математике.</p>
9
<p>Анна готовит учеников к ЕГЭ в школе "<a>Топскул</a>" и консультирует онлайн-школы по вопросам эффективного обучения.</p>
9
<p>Анна готовит учеников к ЕГЭ в школе "<a>Топскул</a>" и консультирует онлайн-школы по вопросам эффективного обучения.</p>
10
<p>Директор IT-стартапа нанял пятерых программистов, которые поочерёдно обслуживают проект по графику 2/8 - два дня кодят и восемь отдыхают. Когда программисты не заняты в проекте, они работают по найму в других компаниях.</p>
10
<p>Директор IT-стартапа нанял пятерых программистов, которые поочерёдно обслуживают проект по графику 2/8 - два дня кодят и восемь отдыхают. Когда программисты не заняты в проекте, они работают по найму в других компаниях.</p>
11
<p>Из-за разногласий с заказчиком директор ненадолго приостановил проект, а когда всё утряслось, возобновил разработку. До дедлайна всего месяц, и, чтобы уложиться в срок, каждый день один человек должен присутствовать на работе. Перенести дедлайн нельзя, выпустить в один день двух и более работников - тоже. Программисты согласились продолжать сотрудничество с компанией, однако у них есть обязательства перед другими заказчиками и свободны не все дни.</p>
11
<p>Из-за разногласий с заказчиком директор ненадолго приостановил проект, а когда всё утряслось, возобновил разработку. До дедлайна всего месяц, и, чтобы уложиться в срок, каждый день один человек должен присутствовать на работе. Перенести дедлайн нельзя, выпустить в один день двух и более работников - тоже. Программисты согласились продолжать сотрудничество с компанией, однако у них есть обязательства перед другими заказчиками и свободны не все дни.</p>
12
<p>По просьбе директора каждый разработчик прислал даты, в которые он может выйти на смену:</p>
12
<p>По просьбе директора каждый разработчик прислал даты, в которые он может выйти на смену:</p>
13
<ul><li>Первый программист: 14-15-е.</li>
13
<ul><li>Первый программист: 14-15-е.</li>
14
<li>Второй программист: 10-11-е или 16-17-е.</li>
14
<li>Второй программист: 10-11-е или 16-17-е.</li>
15
<li>Третий программист: 12-13-е или 18-19-е.</li>
15
<li>Третий программист: 12-13-е или 18-19-е.</li>
16
<li>Четвёртый программист: 12-13-е или 16-17-е.</li>
16
<li>Четвёртый программист: 12-13-е или 16-17-е.</li>
17
<li>Пятый программист: 10-11-е или 14-15-е.</li>
17
<li>Пятый программист: 10-11-е или 14-15-е.</li>
18
</ul><p>Помогите директору построить график так, чтобы вовремя сдать проект.</p>
18
</ul><p>Помогите директору построить график так, чтобы вовремя сдать проект.</p>
19
<p>Метод исключения подходит для логических задач с большим количеством данных и простыми процессами - когда проще проверить несколько вариантов и исключить неправильные, чем искать алгоритм решения всей задачи. Для удобства все данные можно визуализировать в виде таблицы: представить исходные условия и последовательно отметить каждое изменение.</p>
19
<p>Метод исключения подходит для логических задач с большим количеством данных и простыми процессами - когда проще проверить несколько вариантов и исключить неправильные, чем искать алгоритм решения всей задачи. Для удобства все данные можно визуализировать в виде таблицы: представить исходные условия и последовательно отметить каждое изменение.</p>
20
<p>В нашем случае можно занести в общую таблицу графики всех программистов и подумать, какие временные промежутки оставить или убрать.</p>
20
<p>В нашем случае можно занести в общую таблицу графики всех программистов и подумать, какие временные промежутки оставить или убрать.</p>
21
<p><strong>Шаг №1.</strong>Перенесём данные из условия задачи в таблицу и отметим дни, в которые каждый из пяти программистов может выйти на работу. Дни удобно сбиваются в пары, поэтому таблицу можно упростить. Сделаем 5 столбцов вместо 10:</p>
21
<p><strong>Шаг №1.</strong>Перенесём данные из условия задачи в таблицу и отметим дни, в которые каждый из пяти программистов может выйти на работу. Дни удобно сбиваются в пары, поэтому таблицу можно упростить. Сделаем 5 столбцов вместо 10:</p>
22
<p><strong>Шаг №2.</strong>Начинаем постепенно перекрашивать ячейки в зелёный и красный цвета:</p>
22
<p><strong>Шаг №2.</strong>Начинаем постепенно перекрашивать ячейки в зелёный и красный цвета:</p>
23
<ul><li>Зелёным мы отметим дни, в которые программист выйдет на смену.</li>
23
<ul><li>Зелёным мы отметим дни, в которые программист выйдет на смену.</li>
24
<li>Красный будет отвечать за дни, которые мы исключим из рабочего графика.</li>
24
<li>Красный будет отвечать за дни, которые мы исключим из рабочего графика.</li>
25
</ul><p>Первый программист может отработать только с 14-го по 15-е число. Поскольку другой возможности поработать у первого программиста нет, отдаём смены 14-го и 15-го числа ему:</p>
25
</ul><p>Первый программист может отработать только с 14-го по 15-е число. Поскольку другой возможности поработать у первого программиста нет, отдаём смены 14-го и 15-го числа ему:</p>
26
<p><strong>Шаг №3.</strong>Переключаемся на пятого программиста, у которого после предыдущего исключения остался только один свободный промежуток - 10-е и 11-е число:</p>
26
<p><strong>Шаг №3.</strong>Переключаемся на пятого программиста, у которого после предыдущего исключения остался только один свободный промежуток - 10-е и 11-е число:</p>
27
<p><strong>Шаг №4.</strong>Теперь мы видим, что 18-го и 19-го числа у нас свободен только третий программист:</p>
27
<p><strong>Шаг №4.</strong>Теперь мы видим, что 18-го и 19-го числа у нас свободен только третий программист:</p>
28
<p><strong>Шаг №5.</strong>У второго программиста остался единственный слот 16-го и 17-го числа:</p>
28
<p><strong>Шаг №5.</strong>У второго программиста остался единственный слот 16-го и 17-го числа:</p>
29
<p><strong>Шаг №6.</strong>По остаточному принципу закрепляем за четвёртым программистом 12-е и 13-е число и заканчиваем формировать график:</p>
29
<p><strong>Шаг №6.</strong>По остаточному принципу закрепляем за четвёртым программистом 12-е и 13-е число и заканчиваем формировать график:</p>
30
<p>По новому графику программисты выйдут на смену в следующие даты: первый - 14-15-го; второй - 16-17-го; третий - 18-19-го; четвёртый - 12-13-го; пятый - 10-11-го.</p>
30
<p>По новому графику программисты выйдут на смену в следующие даты: первый - 14-15-го; второй - 16-17-го; третий - 18-19-го; четвёртый - 12-13-го; пятый - 10-11-го.</p>
31
<a><b>Бесплатный курс по Python ➞</b>Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу</a>
31
<a><b>Бесплатный курс по Python ➞</b>Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу</a>