En el siguiente problema, ¿cuántas combinaciones posibles de sombreros hay para que nadie use el mismo color de sombrero?

En la configuración dada del problema, solo hay una combinación de trabajo:
Amigo [0] usa sombrero 2
Amigo [1] usa sombrero 4
Amigo [2] usa sombrero 3
Amigo [3] usa sombrero 1

La función de combinación también es difícil de usar para problemas como este en general, ya que ni la perspectiva “cada amigo elige un sombrero” ni la perspectiva “cada sombrero elige un amigo” se reduce claramente a un problema combinado.

EDITAR: La nueva forma de la pregunta donde solo los amigos adyacentes deben usar sombreros de diferentes colores permite más combinaciones (dos, en este caso), pero no es fundamentalmente más fácil de abordar con la función de combinación.

Pero eso es matemática. La forma más fácil de resolver esto con un programa es buscar de forma recursiva en el árbol de posibles secuencias de colores del sombrero aquellas que se ajusten al criterio. La búsqueda en profundidad es probablemente el camino a seguir.

More Interesting

¿La informática y la programación están conectadas con el pensamiento matemático?

¿Cómo convertiría estos datos matemáticos a la función por partes?

¿Por qué diferenciamos entre máquinas Turing universales y máquinas Turing normales?

¿Cuál es el significado y el beneficio de las variables compartidas en Theano?

¿Se conocieron y / o trabajaron juntos Alan Turing (1912-1954) y John von Neumann (1903-1957)?

¿Cómo se puede encontrar el logaritmo de base 10 de un número de hasta 5 decimales con solo usar las cuatro operaciones básicas (+, -, *, /) con la ayuda de una calculadora?

¿Un bucle siempre tiene un punto de partida?

Cómo escribir un programa en C para verificar si para cualquier triplete entero (x, y, z) y otro entero n, [matemática] n ^ x + n ^ y = n ^ z [/ matemática] ocurre para (a, b) siendo la entrada donde [matemáticas] a \ leq n \ leq b [/ matemáticas]

¿Cuál es la longitud esperada de la subsecuencia creciente más larga?

¿Por qué soy bueno en cursos intensivos de programación, pero sigo reprobando en cursos de teoría de informática? ¿Estoy en condiciones de ser ingeniero de software?

¿Para qué se usan las mónadas en ingeniería de software?

¿Qué tiene de malo este algoritmo 3SAT?

Cómo determinar el número total de triángulos degenerados sin bucles de una longitud determinada (más de 3)

¿Por qué todos los ceros (0000 0000) en el campo de exponente representan el exponente -126 y no -127 en coma flotante IEEE de precisión simple?

¿De qué se trata más la computación cuántica: Computadoras o Física y Matemáticas?