elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Temas
Páginas: [1]
1  Programación / Programación General / Ayuda con ejercicio - Algoritmo en: 28 Mayo 2016, 19:51 pm
Buenas, me invitaron a unirme a un sitio web de busquedas laborales para programadores.
La cosa es que para poder ingresar te dan a resolver un ejercicio. el cual plantea lo siguiente:

Citar
El instituto geográfico nacional se encarga de, periódicamente, tomar fotografías aéreas para detectar cambios en el relieve terrestre. Para agilizar esta tarea desean tener una herramienta que, dada una imagen, pueda detectar los bordes de las montañas. Las imágenes son representadas con matrices de números enteros que representan la altura sobre el nivel del mar en metros en una posición determinada. Consideraremos a un estrato como a un conjunto conexo de posiciones de la matriz con misma altura. Para que una parte de la imágen se considere el borde de una montaña debe ser un estrato mínimo local. Esto quiere decir que es un estrato y que no posee ningún estrato vecino con altura menor. Diseñar un algoritmo que, dada una matriz, devuelva otra matriz con 0 en todas sus posiciones excepto en los bordes de las montañas que encuentre.

Mas abajo hay una consola para resolver el ejercicio:

Código
  1. <?php
  2. // Para testear tu código en nuestros servidores debes mantener la estructura expuesta abajo.
  3. // Eres libre de crear nuevas funciones/procedimientos.
  4. // Recuerda que el código que escribas podrá ser visto por las empresas a las que te postules.
  5. ?>
  6. <?php
  7. // $relieve = [[8, 9, 2, 2, 3, 5], [9, 8, 3, 2, 4, 5], [9, 7, 2, 2, 4, 3], [9, 9, 2, 4, 4, 3], [9, 2, 3, 4, 3, 5]];
  8. // Representación gráfica
  9. // 8 9 2 2 3 5  
  10. // 9 8 3 2 4 5  
  11. // 9 7 2 2 4 3  
  12. // 9 9 2 4 4 3  
  13. // 9 2 3 4 3 5
  14. function encontrar_bordes($relieve){
  15.  // return [[1, 0, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0], [0, 0, 1, 1, 0, 1], [0, 0, 1, 0, 0, 1], [0, 1, 0, 0, 1, 0 ]];
  16. }
  17. ?>

Entiendo que existe un algoritmo llamado "de Floyd-warshall" segun wikipedia:
Citar
En informática, el algoritmo de Floyd-Warshall, descrito en 1959 por Bernard Roy, es un algoritmo de análisis sobre grafos para encontrar el camino mínimo en grafos dirigidos ponderados. El algoritmo encuentra el camino entre todos los pares de vértices en una única ejecución. El algoritmo de Floyd-Warshall es un ejemplo de programación dinámica.

Aclaro que para nada quiero que me den la respuesta o me resuelvan el ejercicio. Asi se pierde el chiste jaja, pero si me gustaria entender, la verdad estoy perdido. No entiendo como deberia recorrer la matriz para poder comparar esos puntos. Veo que es simple, entiendo que deberia poder resolverse con poco codigo, por eso es un algoritmo, pero me mato pensando y no se me ocurre nada

saludos
2  Programación / Ingeniería Inversa / Overflow en 64bit en: 26 Mayo 2016, 18:01 pm
Buenas,
la cosa es asi, me tope con un problema que hace dias no puedo resolver y me puse a recordar con nostalgias las epocas de buscar ayuda en foros. A todo esto: sorpresa ! Pese a tener 8 años mi cuenta seguia abierta ! Alegria de estar publicando en este gran foro de nuevo !

Vamos a los bifes. testeando contra una aplicacion, un servidor TFTP de antaño, encontre un lindo Seg. Fault a la hora de ejecutar GET /<nombre de archivo>
Siguiendo la logica comun en estos casos levanto a mi buen gdb y me pongo a jugar con el fuzzer.

Citar
tftp> server 192.168.0.105
tftp> GET archivo_existente.txt // Lo recibo OK !
tftp> GET A x 1000 // Archivo inexistente, pero todo ok !
tftp> GET A x 1535 // Seg. Fault y crash

Hasta todo bien y es ahora donde comienza mi duda. Veamos el gdb.

Todas las pruebas que hice, despues de los 1535 caracteres sobreescriben el registro RBX.
Mi intencion con todo esto es sobreescribir el RIP para seguir adelante con la shellcode

Es la primera vez que intento explotar bajo 64bit. Veo que tienen sus diferencias con 32bit.

Bueno ahi dejo posteada la duda, si alguno quiere aportar alguna ayuda o critica, genial !
Saludos
3  Programación / PHP / Patrones :: SplObserver en: 8 Septiembre 2013, 19:42 pm
Código
  1. <?php
  2. /**
  3. * SplObserver Pattern
  4. * @author Rebolini Pablo <rebolini.pablo@gmail.com>
  5. *
  6. *
  7. * Objetivo:  Definir una relacion de uno a muchos entre objetos,
  8. *   de forma tal, que cuando un objeto cambia de estado
  9. *   se notifica y actualiza automaticamente todos los
  10. *   objetos observadores. Provee una forma flexible de
  11. *   comunicacion entre objetos.
  12. *
  13. *
  14. * Aplicacion: Uno o varios objetos necesitan ser notificados de
  15. * los cambios de otro objeto concreto.
  16. * Las notificaciones se realizan de forma dinámica
  17. * en tiempo de ejecución.
  18. * El objeto observable no necesita saber quien lo
  19. * observa exactamente, sino que es un observador,
  20. * por lo que se consigue un mejor desacople.
  21. * (Fuente de esta explicacion: http://es.davidhorat.com/publicaciones/articulos/patrones/observador/)
  22. *
  23. * El patron SplObserver lo podemos combinar con cualquier
  24. * metodo de persistencia de datos. Por ejemplo DAO
  25. *
  26. *
  27. *
  28. * El objetivo de este ejemplo es implementar una clase Memorandum encargada
  29. * de crear y notificar a los diferentes departamentos sobre un nuevo Memorandum
  30. * interno.
  31. * Se espera que cada departamento sea capaz de obtener la notificacion en tiempo
  32. * de ejecucion y generar un memorandum del siguiente formato:
  33. *
  34. * =================== MEMO ===================
  35. * DESDE DEPARTAMENTO DE VENTAS:
  36. *
  37. * Nuevo Memorandum urgente: Nueva metodologia de trabajo
  38. * Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  39. *
  40. * Atte. Dpto CEO
  41. * 09/03/1969 15:33
  42. * ============================================
  43. *
  44. */
  45. ?>
  46.  

Sin mas: https://github.com/rebolini-pablo/PhpPatrones/tree/master/Spl%20Observer

Cualquier duda o critica sera bienvenida.

Saludos
4  Programación / PHP / Patrones :: DAO + VO en: 8 Septiembre 2013, 05:20 am
Código
  1. <?php
  2. /**
  3. * Ejemplo de implementacion de DAO + VO
  4. * @author Rebolini Pablo <rebolini.pablo@gmail.com>
  5. *
  6. * Objetivo:   Proveer acceso a un modelo sin revelar datos
  7. *              de su estructura interna.
  8. *  
  9. *              Es independiente del sistema de persistencia.
  10. *              Podríamos cambiar el almacenamiento de una base
  11. *              de datos relacional a una noSQL sin modificar
  12. *              el resto de la aplicación.
  13. *  
  14. *              Provee una cantidad determinada de métodos que
  15. *              nos solucionan el problema de la persistencia de datos.
  16. *
  17. *
  18. * Aplicacion: El patron DAO puede ser utilizado siempre que se
  19. *              necesite abstraer el acceso a la persistencia.
  20. *              Dentro de un framework MVC un Modelo bien
  21. *              puede ser un DAO.
  22. *              El patron DAO crea una capa de abstraccion que no
  23. *              siempre es util
  24. *              El patron DAO se puede, y en algunos casos se debe,
  25. *              combinar con el patron VO, DTO, Factory, Repository.
  26. *              Aunque no existen reglas de oro para esto.
  27. **/
  28. ?>
  29.  

Sin mas: https://github.com/rebolini-pablo/PhpPatrones/tree/master/DAO_VO

Criticas y sugerencias serán bienvenidas

Saludos !
5  Programación / Programación Visual Basic / problema con list view en: 28 Agosto 2008, 23:53 pm
Código
  1. Private Function Sumar() As Double
  2.  
  3.    Dim i As Integer
  4.        For i = 1 To ListView1.ListItems.Count
  5.             SumarPar = SumarPar + CDbl(ListView1.ListItems(i).SubItems(3))
  6.         Next i
  7.  
  8.  
  9. End Function
  10.  
  11. Private Sub Command3_Click()
  12.  
  13. Label1.Caption = "Total pares: " & Val(SumarPar)
  14. End Sub
  15.  

siempre tira que la suma es 0  >:(
6  Programación / Programación Visual Basic / Ircbot en vb6 =) en: 27 Agosto 2008, 23:21 pm
buenas.

estoy creando un ircbot, el problema que tengo es que quiero que al comando !info responda con informacion simple del sistema, como ip, SO y alguna otra cosa...

El problema es que no se como, me dijieron que existia una API para esto, pero no se como se llama... :) :huh:
 
gracias
 

EDIT: ya lo solucione gracias :)
7  Programación / Programación Visual Basic / MSflexGrid en: 20 Agosto 2008, 17:00 pm
Buenas, estoy usando un MSflexgrid para ordenar datos...

tengo 4 columnas una que indica el numero que ingrese, otra que marca si es par o impar, y otra que marca la cantidad de veces que salio el numero...

Quisiera saver como hacer para que me diga cuantos pares e impares salieron...

Hasta ahora tengo este code:
Código
  1. Option Explicit
  2.  
  3. Private Sub cmdGuardar_Click()
  4.    Dim arch As Variant
  5.    Dim i As Integer
  6.  
  7.    Set arch = CreateObject("Scripting.FileSystemObject").CreateTextFile _
  8.        (App.Path & "\" & idtxt & ".txt", True)
  9.  
  10.    With flxLista
  11.        For i = 1 To .Rows - 1
  12.            arch.WriteLine ( _
  13.            .TextMatrix(i, 0) & vbTab & _
  14.            .TextMatrix(i, 1) & vbTab & _
  15.            .TextMatrix(i, 2) & vbTab & _
  16.            .TextMatrix(i, 3))
  17.        Next
  18.    End With
  19.  
  20.    arch.Close
  21.  
  22.  
  23. End Sub
  24.  
  25.  
  26.  
  27. Private Sub cmdSalir_Click()
  28. End
  29. End Sub
  30.  
  31. Private Sub IniciarLista()
  32.    Dim factor As Single
  33.  
  34.    With flxLista
  35.        factor = (.Width - 360) / 10
  36.  
  37.        .Cols = 4
  38.        .Rows = 1
  39.  
  40.  
  41.        .ColWidth(0) = 4 * factor
  42.        .ColWidth(1) = 1.5 * factor
  43.        .ColWidth(2) = 1.5 * factor
  44.        .ColWidth(3) = 3 * factor
  45.  
  46.        .TextMatrix(0, 0) = "Número"
  47.        .TextMatrix(0, 1) = "Par"
  48.        .TextMatrix(0, 2) = "Impar"
  49.        .TextMatrix(0, 3) = "Cantidad"
  50.    End With
  51. End Sub
  52.  
  53. Private Sub cmdAgregar_Click()
  54.    Dim pos As Integer
  55.  
  56.    If txtEntrada = "" Then Exit Sub
  57.  
  58.    With flxLista
  59.        pos = Buscar(txtEntrada)
  60.  
  61.        If pos > 0 Then
  62.            .TextMatrix(pos, 3) = Val(.TextMatrix(pos, 3)) + 1
  63.        Else
  64.            .AddItem txtEntrada
  65.  
  66.            If Val(txtEntrada) Mod 2 = 0 Then
  67.                .TextMatrix(.Rows - 1, 1) = "X"
  68.            Else
  69.                .TextMatrix(.Rows - 1, 2) = "X"
  70.            End If
  71.  
  72.            .TextMatrix(.Rows - 1, 3) = 1
  73.        End If
  74.    End With
  75. End Sub
  76.  
  77.  
  78. Private Sub Form_Load()
  79.    IniciarLista
  80. End Sub
  81.  
  82. ' Busca 'valor' en la primera columna del flex y retorna la fila donde es hallado
  83. Private Function Buscar(valor As String) As Integer
  84.    Dim i As Integer
  85.  
  86.    With flxLista
  87.        i = .Rows - 1
  88.        Do While i > 0 And .TextMatrix(i, 0) <> valor
  89.            i = i - 1
  90.        Loop
  91.    End With
  92.  
  93.    Buscar = i
  94. End Function
  95.  
  96. Private Sub txtEntrada_KeyPress(KeyAscii As Integer)
  97.    If KeyAscii = "13" Then
  98.    cmdAgregar.SetFocus
  99. End If
  100. End Sub
  101.  
  102.  
  103.  
8  Programación / Programación Visual Basic / HTTPspectator :) beta en: 16 Agosto 2008, 04:13 am
bueno este es mi primer programa en vb6 tiene algunos errores que no se como solucionarlos...

me gustaria que lo prueben y medigan que le parece y si le encuentran algo para modificarle que me lo digan...

http://rapidshare.com/files/137650159/final.rar.html

adentro esta el source y el proyecto compilado  ;)
9  Programación / Programación Visual Basic / problema con winsock en: 25 Julio 2008, 14:50 pm
estoy tratando de aprender a usar el winsock, cuando quiero conectar y mandar la data me tira este error
Citar
protocolo o estado de conexión errorneo para la transaccion o peticion solicitada

Probe con diferentes aplcaciones pero siempre me pasa lo mismo :P

10  Programación / Programación Visual Basic / Visual Basic portable en: 19 Junio 2008, 00:44 am
No se si esta ya, pero aqui lo pongo... Espero que sirva  :D

http://www.megaupload.com/?d=VDOBVZU2
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines