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

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

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

Один блогер-художник провёл конкурс в своём инстаграме и выбрал 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
Задача о деньгах
Задача о деньгах

Пропало 300 рублей, но никто этого не заметил.

medium
Задача про скорость тестирования
Задача про скорость тестирования

Почему один программист уходит с работы раньше, чем второй

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

Считаем строки кода.

easy
Простая задача, которую сходу не смог решить Эйнштейн
Простая задача, которую сходу не смог решить Эйнштейн

Мы тоже не смогли, теперь ваша очередь.

hard
Как выиграть в соревнованиях, когда играешь хуже всех
Как выиграть в соревнованиях, когда играешь хуже всех

Ещё одна обалденная задача на стратегию и игровую теорию.

hard
Задача про ШОК-КОНТЕНТ: можно доказать, что 2 + 2 = 5!
Задача про ШОК-КОНТЕНТ: можно доказать, что 2 + 2 = 5!

Добавить нечего

easy
easy