Desafío de programación de octubre 2009

  • Rabid Dog
  • Cheese Monkey
  • Web Master
  • Avatar de Usuario
  • Registrado: May 21, 2004
  • Mensajes: 3188
  • Loc: South Africa
  • Status: Offline

Nota Octubre 6th, 2009, 1:34 am

Ok así que finalmente tengo uno nuevo para todos. Es relativamente sencillo, pero creo que el reto es hacerlo en la menor cantidad de código posible. Esto está abierto a cualquier idioma.

El problema:
Usted tiene una cerradura de combinación con 3 series ejecutando 0-9 (como las que se encuentran en cartera).

Así pues, en otras palabras
Set 1 [0-9]
Set 2 [0-9]
Set 3 [0-9]

Su reto:
Este es un reto dos fases

Fase 1:
Para encontrar todas las posibles combinaciones disponibles en la cerradura de combinación. Para ello sería necesario que la impresión fuera a una consola o algún otro medio de comunicación. Esto debe ser lo suficientemente inteligente como para manejar las cerraduras de combinación con más o menos de 3 sets. Usted hasta podría llevarlo en la medida en la que también puede pasar en la cantidad de números de cada conjunto contiene.

Fase 2:
Teniendo en cuenta todas las combinaciones de proporcionar un código y encontrar en el conjunto de combinación. Esto significa que el método debe ser capaz de encontrar una combinación dentro del conjunto de combinaciones posibles. Este es un mecanismo de fuerza bruta.

Su firma método podría ser algo en el sentido de
Código: [ Download ] [ Select ]
public void FindCombinations(int sets, int setLength, int[] combinationToSearchFor){

}
  1. public void FindCombinations(int sets, int setLength, int[] combinationToSearchFor){
  2. }


Formato de Solicitud y Reglas
Dado que esto probablemente podría ser envuelto en un único método o función, publicar sus soluciones en este tema. Una vez que alguien ha publicado una solución en un idioma específico no podrá renovar el mismo algoritmo de en ese idioma. Si se trata de una variación sobre el algoritmo está bien

En el cierre
No es tan difícil, pero es fresco cuando usted hace bien! Pensar matemáticamente y usted debería ser capaz de llegar a una solución bastante elegante.
My Software Development Company
Music I have recorded (fixed now :))
Imagen
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Octubre 6th, 2009, 1:34 am

  • mk27
  • Proficient
  • Proficient
  • Avatar de Usuario
  • Registrado: Jun 09, 2009
  • Mensajes: 278
  • Status: Offline

Nota Octubre 6th, 2009, 9:07 am

Rabid Dog escribió:
Fase 2:
Teniendo en cuenta todas las combinaciones de proporcionar un código y encontrar en el conjunto de combinación. Esto significa que el método debe ser capaz de encontrar una combinación dentro del conjunto de combinaciones posibles.


Creo que debería explicar qué quiere decir con esto (al menos para mí). "Con todas las combinaciones" es tan simple como que se declara una matriz 3D, o algún tipo de estructura de datos en paralelo. Por supuesto, cualquier y todas las combinaciones serán dentro de eso. Entonces, ¿qué sería "encontrar un conjunto de combinación dentro de las combinaciones posibles" se refiere?

Rabid Dog escribió:
Su reto:
Este es un desafío trifásico

En realidad cuento con 2 en el OP.

Tal vez usted podría publicar un pseudo-código de la versión de lo que quiere decir, o simplemente un prototipo de función (requiere insumos, requiere salidas), porque para la vida de mí, yo no veo esa posibilidad aquí...

Código: [ Download ] [ Select ]
int main(void) {
int triple_matrix[10][10][10];
return 0;
}
  1. int main(void) {
  2. int triple_matrix[10][10][10];
  3. return 0;
  4. }

Vaya, sólo el índice subíndice de la matriz contendrá todas las combinaciones. Ni siquiera tiene que asignarlos. Check "donde está"? Muy bien, la combinación 3-0-7 está en triple_matrix [3] [0] [7]. No se ofenda, pero o bien estoy totalmente de no te entiendo, o se trata de un "no" de programación de concurso. :roll:

Si lo que quieres decir es descifrar un código de 3 dígitos, entonces es conseguir un número de cuenta correcto (luego proceder a la siguiente), o usted necesita para obtener los tres correcta a la vez? De cualquier manera, es sólo un "bruto-fuerza" conjunto de bucles iterativos, pero la segunda, tomará más tiempo.
Imagen
  • UPSGuy
  • Lurker ಠ_ಠ
  • Mastermind
  • Avatar de Usuario
  • Registrado: Jul 25, 2005
  • Mensajes: 2497
  • Loc: Nashville, TN
  • Status: Offline

Nota Octubre 6th, 2009, 9:10 am

Im un poco nebulosa aquí también. Im un poco perdido en las mismas - que me estaban buscando permutaciones, pero thats sobre ella.
I'd love to change the world, but they won't give me the source code.
  • Rabid Dog
  • Cheese Monkey
  • Web Master
  • Avatar de Usuario
  • Registrado: May 21, 2004
  • Mensajes: 3188
  • Loc: South Africa
  • Status: Offline

Nota Octubre 6th, 2009, 9:30 am

Lo siento chicos no sé de qué otra manera realmente explicarlo. mk27 está en el buen camino en términos de llenado de las matrices con las combinaciones, pero la idea es realmente la figura que con base en los parámetros que yo he ofrecido en la firma del método por encima de lo que no saben realmente lo que el número de juegos es en el método sólo que es a condición de que (he actualizado para reflejar que por encima). Por favor, leer por encima y quiero saber si tiene sentido lo contrario me va a tener que venir con otra idea. Yo creo que el derecho establecido de forma individual es lo suficientemente bueno. Es efectivamente un método de tipo fuerza bruta, pensé lista de todas las combinaciones posibles sería un desafío en su propio inicialmente para aquellos que están empezando
My Software Development Company
Music I have recorded (fixed now :))
Imagen
  • mk27
  • Proficient
  • Proficient
  • Avatar de Usuario
  • Registrado: Jun 09, 2009
  • Mensajes: 278
  • Status: Offline

Nota Octubre 7th, 2009, 12:10 pm

Rabid Dog escribió:
Por favor, leer por encima y quiero saber si tiene sentido lo contrario me va a tener que venir con otra idea. Yo creo que el derecho establecido de forma individual es lo suficientemente bueno. Es efectivamente un método de tipo fuerza bruta, pensé lista de todas las combinaciones posibles sería un desafío en su propio inicialmente para aquellos que están empezando


Yo pienso que usted debe (pensar en otra idea). "Teniendo en cuenta todas las combinaciones de proporcionar un código y encontrar en el conjunto de combinación" - simplemente no tiene sentido, perros rabiosos. O más bien, tiene sentido, pero no ve "un problema" (como, "Teniendo en cuenta el espectro, encontrar el color del cielo").

Dado el tamaño del conjunto, etc, no se conocen, supongo que sería un desafío para "los que están empezando" para hacer frente a la forma de la estructura dinámica de algunos datos, pero realmente creo que haya necesidad de ser más de carne en estos huesos, ya que una vez los datos están estructurados, la combinación es que - usted no necesita a "encontrar", sólo tiene que hacer la iteración de fuerza bruta (a menos que exista un bruto método de ninguna fuerza, que me sorprendería, pero bueno ).

Estaba buscando en Google y he encontrado alrededor de esta página:
http://www.codinghorror.com/blog/archives/000951.html
Ive pasó un montón de tiempo en cprogramming.com (como, 3500 puestos de trabajo en 15 meses) y así llego a ver mucho de lo que los estudiantes están recibiendo CS le pide que haga en sus primeros años. De los problemas enumerados en la página anterior, he visto en temas menos 5-10 en cada una de ellas a excepción de "dos generales", que nunca Ive oído hablar. Ive nunca me tomado el tiempo para resolver ninguno de ellos *, fíjate, pero se ven algo interesante. El "comedor filósofos" no es tan adecuada, ya que es realmente un problema multi-process/threading, pero para asegurarse de que el Ocho "reinas" o "Torres de Hanoi" son buenos, así que tal vez es el "vendedor ambulante" pero hay que dar contenido fuera. Creo que están todos en mayor o menor sobre las permutaciones. Si parece demasiado complicado (creo que tendría la mayoría de la gente por lo menos una tarde), hay toneladas de problemas en "juez de Esfera en línea":
http://www.spoj.pl/
, aunque la interfaz SPOJ sí mismo es el Rengo y tiene que registrarse para navegar por la Challanges, pero que van desde cosas simples muerto en adelante.

En cualquier caso, triste que no me siento más creativo, pero theres algunas sugerencias. Tal vez alguien podría llegar a una complicación en la idea original de la OP (se necesita una complicación), a veces cosas como que cae del cielo a la tierra y gestiona en mi cabeza...sólo hasta el momento no :oops:

* Tengo suficientes problemas de programación que se gif "alt =": lol: "title =" Laughing "> pero prometo hacer esto.
Imagen
  • Rabid Dog
  • Cheese Monkey
  • Web Master
  • Avatar de Usuario
  • Registrado: May 21, 2004
  • Mensajes: 3188
  • Loc: South Africa
  • Status: Offline

Nota Octubre 7th, 2009, 12:27 pm

Ok, si bien el consenso general es que esto no va a funcionar, voy a ver si puedo llegar a otro.

La parte difícil es encontrar algo que todos pueden trabajar.
My Software Development Company
Music I have recorded (fixed now :))
Imagen
  • ingot
  • Born
  • Born
  • No Avatar
  • Registrado: Oct 16, 2009
  • Mensajes: 2
  • Status: Offline

Nota Octubre 16th, 2009, 9:08 am

Suena interesante :)
  • Bogey
  • Disturbed
  • Genius
  • Avatar de Usuario
  • Registrado: Jul 14, 2005
  • Mensajes: 7128
  • Loc: Ozzuland
  • Status: Offline

Nota Noviembre 9th, 2009, 8:31 pm

Es el reto próximo mes de noviembre? No puedo creer que me perdí este...Yo también sin embargo, no puede realmente entender el desafío.

A la que quiere encontrar todas las combinaciones posibles en una determinada cantidad de conjuntos cuyo número podría oscilar entre 0 y 9? Si es así, creo que lo tengo.
Learn PHP | I got 10 PHP tutorials! Check them out!
Dreamtale - Farewell
Just a note... I've giving up on web development and that stuff... Just lost all interest in it.

Publicar Información

  • Total de mensajes en este tema: 8 mensajes
  • Usuarios navegando por este Foro: jammer2552 y 134 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© Unmelted Enterprises 1998-2009. Impulsado por phpBB © 2001-2009 phpBB Group.