Ejercicios Propuestos 2012 Maratón de Programación FUTCO 2012-2
1. Superdicifrador: Una forma de cifrar texto consiste en permutar las letras del alfabeto o sea reemplazar una única letra por otra única letra. Una método de análisis criptográfico consiste en utilizar un fragmento de texto conocido y encontrar el equivalente encriptado, luego a partir de la equivalencia de letra por letra descifrar el resto del texto.
Entrada: número de líneas de texto a analizar, líneas de texto cifradas, línea de texto conocida.
Salida: Líneas de texto completamente descifradas
Ejemplo entrada:
3
xn ynengbz pq cebsenynoubz qf hz qiqzgb dhq eqgn qx enmbznyuqzgb xbsuob
qx vqrq ñhfob qx qkgnfuf qz hz uyceqiufgb ñnab pq jtufwl l sbmb obyb hz phdhq
fu oxnfuruonybf inybf n xn ynengbz znoubznx pq nouf
el jefe busco el extasis en un imprevisto baño de whisky y gozo como un duque
Ejemplo de salida:
Entre las líneas debe salir la línea conocida y el resto descifradas en el orden de las cifradas.
2. El puente: Un grupo de n personas quiere cruzar un puente por la noche, solo pueden cruzar como mucho dos personas a la vez, cada grupo debe llevar una lámpara, pero solo hay una por lo que deben organizarse de tal forma que después que crucen alguien tiene que devolverse con la lámpara. Cada persona tiene una velocidad diferente por lo que la velocidad del par que crucen es la velocidad del más lento. La tarea consiste en idear un procedimiento que permita cruzar al grupo de personas en el menor tiempo posible.
Entrada: El número de personas a cruzar y las velocidades de cada persona
Salida: La suma total del tiempo y la descripción de la cruzada del puente indicando las personas o persona identificadas por sus tiempos al ir y/o volver.
3. La pareja más cercana: Dada una lista de números enteros positivos que puede contener desde 5 hasta 1000 elementos, por ejemplo (4, 6, 1, 90, 56, 43, 79, 23) se desea saber, cuáles dos de ellos son los más cercanos en valor, es decir, que el valor absoluto de su diferencia sea menor que el de cualquier otra pareja de números en la lista. Para la lista anterior, la pareja más cercana son 4 y 6, ya que ningún otro par de números tiene una resta cuyo valor absoluto sea menor a 2 (6-4=2). Escribe de la manera más eficiente posible, un algoritmo que permita, mediante el uso de una computadora obtener la pareja más cercana de una lista dada.
4. Barajeo perfecto: Cuando se barajea un mazo de cartas, se toma el mazo completo y se divide en dos, posteriormente se juntan los dos montones en un nuevo mazo poniendo una carta del primer montón, y una carta del segundo, y así posteriormente hasta que no quede ninguna carta en ninguno de los montones. Cuando se "barajean" datos se hace de la misma forma, se toma la lista de datos y se divide en dos, posteriormente se juntan de nuevo pero poniendo el primer dato de la primera mitad y luego el primer dato de la segunda, y así hasta terminar los datos en las dos mitades.
Entrada: cantidad de números, números
Salida: números barajeados.
5. Triangulo de pascal: Se usa para encontrar los coeficientes numéricos en una formula de binomios. Entrada: Número de filas a generar
Salida: Filas generadas
Extraidos de : http://maratondeprogramacion-futco.blogspot.com/2012/10/ejercicios-propuestos.html
Salida: Líneas de texto completamente descifradas
Ejemplo entrada:
3
xn ynengbz pq cebsenynoubz qf hz qiqzgb dhq eqgn qx enmbznyuqzgb xbsuob
qx vqrq ñhfob qx qkgnfuf qz hz uyceqiufgb ñnab pq jtufwl l sbmb obyb hz phdhq
fu oxnfuruonybf inybf n xn ynengbz znoubznx pq nouf
el jefe busco el extasis en un imprevisto baño de whisky y gozo como un duque
Ejemplo de salida:
Entre las líneas debe salir la línea conocida y el resto descifradas en el orden de las cifradas.
2. El puente: Un grupo de n personas quiere cruzar un puente por la noche, solo pueden cruzar como mucho dos personas a la vez, cada grupo debe llevar una lámpara, pero solo hay una por lo que deben organizarse de tal forma que después que crucen alguien tiene que devolverse con la lámpara. Cada persona tiene una velocidad diferente por lo que la velocidad del par que crucen es la velocidad del más lento. La tarea consiste en idear un procedimiento que permita cruzar al grupo de personas en el menor tiempo posible.
Entrada: El número de personas a cruzar y las velocidades de cada persona
Salida: La suma total del tiempo y la descripción de la cruzada del puente indicando las personas o persona identificadas por sus tiempos al ir y/o volver.
Ejemplo de entrada Ejemplo de salida
4 17
1 1 2
2 1
5 5 10
10 2
1 2
3. La pareja más cercana: Dada una lista de números enteros positivos que puede contener desde 5 hasta 1000 elementos, por ejemplo (4, 6, 1, 90, 56, 43, 79, 23) se desea saber, cuáles dos de ellos son los más cercanos en valor, es decir, que el valor absoluto de su diferencia sea menor que el de cualquier otra pareja de números en la lista. Para la lista anterior, la pareja más cercana son 4 y 6, ya que ningún otro par de números tiene una resta cuyo valor absoluto sea menor a 2 (6-4=2). Escribe de la manera más eficiente posible, un algoritmo que permita, mediante el uso de una computadora obtener la pareja más cercana de una lista dada.
4. Barajeo perfecto: Cuando se barajea un mazo de cartas, se toma el mazo completo y se divide en dos, posteriormente se juntan los dos montones en un nuevo mazo poniendo una carta del primer montón, y una carta del segundo, y así posteriormente hasta que no quede ninguna carta en ninguno de los montones. Cuando se "barajean" datos se hace de la misma forma, se toma la lista de datos y se divide en dos, posteriormente se juntan de nuevo pero poniendo el primer dato de la primera mitad y luego el primer dato de la segunda, y así hasta terminar los datos en las dos mitades.
Entrada: cantidad de números, números
Salida: números barajeados.
Ejemplo de entrada Ejemplo de salida
8
1 1
2 5
3 2
4 6
5 3
6 7
7 4
8 8
5. Triangulo de pascal: Se usa para encontrar los coeficientes numéricos en una formula de binomios. Entrada: Número de filas a generar
Salida: Filas generadas
Ejemplo de entrada Ejemplo de salida
7 1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
Extraidos de : http://maratondeprogramacion-futco.blogspot.com/2012/10/ejercicios-propuestos.html
Este comentario ha sido eliminado por el autor.
ResponderEliminarAmi Me Encanta Programar, Pero Aveces No Me Sale y No Puedo :(...!!!
ResponderEliminarAsi Que Algun Dia; Davichano Mix.!!!
intenta, intenta, la práctica hace al maestro!
ResponderEliminarExcelente, a practicar :)
ResponderEliminar