Gráficas simples con GNUPlot

Posted on November 12th, 2007 in Devel, EDA by admin (759 lecturas)

screenshot3.pngHoy he necesitado crear una pequeña gráfica que mostrara simultáneamente dos funciones simples:

f(x) = 2*x + x**2
g(x) = 52 + 2*x

Me he acordado de que en Linux disponemos de una aplicación con este objetivo (que a pesar del nombre, tal y como bien nos corrige Etxekalte, NO es una aplicación GNU, y ni siquiera tiene una licencia GPL) y tras echarle un vistazo a los ejemplos de la documentación he podido crear mi pequeño script:

$ gnuplot
set xtics 1
set yrange [0:100]
plot [0:10] 2*x + x**2, 52 + 2*X

El resultado lo podéis ver en la figura adjunta. ¿Alguien me puede decir cómo se haría eso mismo en el sistema de Redmond? (Tal y como apunta Marlowe, GNUPlot también está disponible para Windows)

Reto de programación: apretones de manos

Posted on August 27th, 2007 in Devel, EDA, Retos by admin (969 lecturas)

Hace poco he participado en una prueba más de TopCoder.com, un excelente sitio para mantener engrasados los conocimientos de estructuras de datos, algoritmos, análisis y diseño de sistemas y programación general. Una de las pruebas me dejó varado y no pude completar a tiempo el ejercicio. Posteriormente he leído bastante al respecto y profundizado en la serie de los números de Catalan, en la que se basa la solución al problema. Sin más, os dejo con el enunciado, a ver si conseguís solucionarlo ;-)

Consideremos una reunión de n personas alrededor de una mesa circular. Antes de comenzar la reunión, se dan la mano unos a otros. Cada persona estrecha la mano de otra persona en un momento dado (y sólo de una). Los apretones de manos se dan todos a la vez (es decir, en un momento dado, cada persona está estrechando la mano de otra) Decimos que un apretón de manos es perfecto si no hay brazos que se crucen entre sí en el momento del apretón. Dado un entero n, devolver el número de apretones de manos perfectos posibles que existen para n personas sentadas a la mesa.

Ejemplo:

si n = 4 personas, los posibles apretones de mano son:

HandsShaking_4_correct/tmp/HandsShaking_4_correct_2.GIF/tmp/HandsShaking_4_wrong.GIF

Las primeras dos figuras muestran apretones de manos perfectos. La 3ª no es un apretón de manos perfecto. La solución para n=4 por tanto es 2. Para n=8 sería 14.