easy

Задача про цветной кубик

Раскрась кубик правильно.

Один блогер-художник провёл конкурс в своём инстаграме и выбрал 35 победителей. Каждому из них он пообещал раскрашенный дизайнерский куб с уникальной окраской. Всего у художника 6 цветов, смешивать цвета он не любит и каждую грань он окрашивает в свой цвет. 

Сможет ли блогер сдержать обещание и сделать 35 уникальных раскрасок кубиков? Помните, что если два кубика можно повернуть так, чтобы у них совпали по цветам все грани, это считается одинаковой окраской.

Сначала посчитаем, сколько вообще вариантов раскраски кубика можно сделать даже с повторениями. Для этого представим, что мы взяли кубик и он никак не вращается. Тогда получается так:

  1. Переднюю грань мы можем раскрасить в 6 разных цветов.
  2. Заднюю грань — в 5 цветов (потому что один цвет уже ушёл на переднюю грань).
  3. Верхнюю — в 4 цвета.
  4. Нижнюю — в 3 цвета.
  5. Левую — в 2 цвета.
  6. И на правую грань у нас останется какой-то один цвет.

Чтобы найти общее количество таких вариантов раскрасок, нужно перемножить эти числа: 1 × 2 × 3 × 4 × 5 × 6 = 720. Это максимальное количество всех вариантов покраски. Среди них обязательно будут неуникальные варианты, когда мы, например, развернём кубик и получим точно такой окрас, как и в другом случае.

Теперь посчитаем, сколько различных положений на старте может принимать куб. Благодаря этому мы узнаем количество повторов, которые получатся при окраске.

Когда мы берём куб в руки лицом к себе, мы можем это сделать шестью разными способами, потому что у куба 6 граней. Ещё мы можем 4 раза вращать его по часовой стрелке, глядя на ту же лицевую сторону. Получается, у нас есть 24 варианта, чтобы зафиксировать куб в одной позиции на старте. Это и есть количество повторов при окраске, потому что мы можем повернуть куб так, как нам нужно, чтобы найти дубль.

В итоге у нас есть 720 вариантов окраски и 24 положения на старте. Теперь мы можем узнать количество уникальных окрасов, разделив одно на другое: 720 / 24 = 30.

Получается, что блогер-художник сможет отправить уникальные кубики только 30 победителям, а 5 остальных получат уже неуникальную раскраску. А всё потому, что блогер плохо знал математику и не дружил с алгоритмами.

А зачем мне это?

Умение сокращать варианты и находить минимально достаточные действия — важное качество для программиста. Благодаря ему у нас появляются короткие оптимальные алгоритмы, а не раздутые на сотни строк кода, которые постоянно проверяют одно и то же и зря тратят машинное время.

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Мария Дронова

Соцсети:

Олег Вешкурцев

Любите такие задачи? Подойдите поближе
Внизу кнопка, при нажатии на нее вы попадете на витрину курсов «Практикума» с нуля. Выбираете там то, что вам близко, и погружаетесь в профессию. Через год-полтора вы работаете в какой-нибудь ИТ-компании. И там вы решаете подобные задачи, но уже за деньги. Старт бесплатно.
Начать бесплатно
Любите такие задачи? Подойдите поближе Любите такие задачи? Подойдите поближе Любите такие задачи? Подойдите поближе Любите такие задачи? Подойдите поближе
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
Попал программист в больницу, и началось
Попал программист в больницу, и началось

Бывает так, что написать код и узнать результат проще, чем делать всё руками.

easy
Тревелблогеры в пустыне
Тревелблогеры в пустыне

Математика против дешевых инстаграмных амбиций.

easy
Задача про безумного рекрутера и большой офис
Задача про безумного рекрутера и большой офис

Вот что бывает, когда начинаешь бесконтрольно нанимать людей, — внезапно заканчивается место в офисе.

easy
Зубодробительная задачка с очень простой математикой
Зубодробительная задачка с очень простой математикой

Эта задача поставит в тупик половину интернета, но не вас.

medium
Задача: угадать месяц по двум дням
Задача: угадать месяц по двум дням

Задача про очень умного аналитика

medium
Задача про необязательного программиста
Задача про необязательного программиста

Как потратить всё, что заработал.

easy
Какой высоты стол?
Какой высоты стол?

Китайская задача про стол, кота, черепаху и взрыв мозга.

easy
Задача с собеседования: найти все простые множители
Задача с собеседования: найти все простые множители

Проверьте себя в деле.

easy
Как научить Эксель самому находить деньги на телефон
Как научить Эксель самому находить деньги на телефон

Мы ставим задачу, а Эксель её решает

medium
easy
[anycomment]
Exit mobile version