UTNianos

Versión completa: Desafíos de programación
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2 3 4 5 6
Uso MercadoLibre XD (xkcd)
Dem0 escribió:Uso MercadoLibre XD (xkcd)

Jajaja, mi fuente de humor ya no es tan exclusiva veo U_U... xD.
ciomar escribió:Esa solución me gustó un poco mas... reducir el conjunto a las que son mas parecidas... Una solución al problema, comparar las imágenes a través del histograma de colores: un vector que va de 0 a 65535 (en el caso de que sean de 64k de color) en donde se suman las cantidades de pixeles de cada color y se coloca el resultado en cada posición correspondiente en el vector. Este método es bastante útil con imágenes... Ahora el siguiente paso al problema es: ¿como realizo el índice de mi base de datos basado en el histograma?

No podrias hashear la imagen y guardar el codigo hash que te genere??
brunodiaz escribió:
ciomar escribió:Esa solución me gustó un poco mas... reducir el conjunto a las que son mas parecidas... Una solución al problema, comparar las imágenes a través del histograma de colores: un vector que va de 0 a 65535 (en el caso de que sean de 64k de color) en donde se suman las cantidades de pixeles de cada color y se coloca el resultado en cada posición correspondiente en el vector. Este método es bastante útil con imágenes... Ahora el siguiente paso al problema es: ¿como realizo el índice de mi base de datos basado en el histograma?

No podrias hashear la imagen y guardar el codigo hash que te genere??


Justo se me habia ocurrido esa..... agarrar los bytes de la imagen (con algun decode del tipo de imagen q tengas) y hashearlo con md5 o sha1 y eso lo guardas como algun tipo de clave.....
Revivo este thread y les dejo uno bastante fácil, de algo que necesita mi hermano para Probabilidad y Estadística, pero no de la UTN, sino del terciario que está haciendo.
En fin, les planteo el problema. Tengo la función random() que me devuelve números con 10 decimales entre 0 y 1. Y necesito generar una población de alturas aleatorias, que varíen entre 1,50 y 2,10 m. ¿Cómo hago?
Aunque les parezco muy fácil, yo no logré hacerlo con exactitud. Será que ya tengo el cerebro quemado.

Haciendo

random() * 100 + 1,5


me aseguro que todas las alturas sean mayores o iguales a 1,50 m.

Por otro lado, haciendo

(altura MOD 21) / 10


me aseguro que las alturas sean menores a 2,10 m.

Pero no pude juntar las dos cosas y hacer que ande para todos los casos. Ejemplo:

Rando() = 0,5
0,5 * 100 + 1,5 = 51,5
51,5 MOD 21 = 9,5
9,5 / 10 = 0,95 --------> INCORRECTO

Rando() = 0,39
0,39 * 100 + 1,5 = 40,5
40,5 MOD 21 = 19,5
19,5 / 10 = 1,95 --------> CORRECTO
nononono


el random lo multiplicas x el margen de alturas q necesitas.. el "diferencial de alturas", seria... en este caso, 60 cm, y a eso le sumas el 1.50 de base...


osea, seria

random() * 60 + 150


para tener alturas entre 150 y 209 cm... eso lo dividis por 100 y tenes tu altura en metros =)

o estoy muy dormido??
Eso se ve en Simulación =).

Y sí, es como dice desert.
pablo escribió:http://www.mozilla.com/en-US/firefox/all-rc.html
Un poco fuera de lugar, ¿no? Al menos que me resuelva mi problema.

Gracias muchachos! Sabía que el 0,60 tenía que ir en algún lugar, pero no le encontraba la vuelta. Igual ya lo hice como pude (los valores que no me daban los hice desaparecer, y generé nuevos, jaja).

Y ya que estamos... hoy me tomaron Gestión de Datos, la parte de resolución e identificación de algoritmos.
Eran 2 ejercicios solamente, y aunque no lo crean el de identificación que tenía solamente 3 líneas de código no lo pude resolver. A ver si se avivan qué hace:


int f1 ( int x) {
for ( z=1 ; (x/z * x/z) > x ; z++ );
return z;
}



No lo busquen en Google ni ningún lado, traten de sacarlo. El enunciado decía "indique en un renglón qué hace el siguiente algoritmo". Después de 3 horas no pude deducirlo (tampoco lo pensé mucho, me dediqué al otro punto). Y cuando entregué le pregunté al profe, así que ya tengo la respuesta.
Veamos cómo les va.
LeaTex escribió:

int f1 ( int x) {
for ( z=1 ; (x/z * x/z) > x ; z++ );
return z;
}



Spoiler: Mostrar
¿Saca el mayor de todos los z que cumplen con (z^2 < x)?

Más o menos me dió que hace eso... ahora si tiene alguna funcionalidad particular se me escapa :p
la verdad siento como se me cierran los ojos asi que no puedo pensarlo mucho xP
pero me gustaria tirotear a que saca la raiz cuadrada entera o hace algo que tiene que ver con la raiz cuadrada
yo iria para el lado de q labura con algo de los decimales... pero no se que...

osea, estas multiplicando x/z * z/x, es decir, un numero por su inverso... salvo x el error de los decimales...

nose, me doy...
Al principio es medio confuso, pero no es nada del otro mundo =D
Solo busca el maximo divisor entero de x.
jajaja, estás todos re-fumados (salvo brunodiaz).
Dem0 escribió:¿Saca el mayor de todos los z que cumplen con (z^2 < x)?

Más o menos me dió que hace eso... ahora si tiene alguna funcionalidad particular se me escapa =P

Fijate que hay demo puso lo mismo que yo
si pasas el cuadrado hacia x como raiz cuadrada te queda que z es el mayor numero entero que cumple con que es menor(menor igual seria mas valido) que la raiz cuadrada de X
Páginas: 1 2 3 4 5 6
URLs de referencia