comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[RETO] Ordenar caracteres (Dificultad=media)

  • 13 Respuestas
  • 4364 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado LKI

  • *
  • Underc0der
  • Mensajes: 61
  • Actividad:
    0%
  • Reputación 0
  • |Un día sin aprender nada, es un día perdido..|
    • Ver Perfil
    • Email
« en: Agosto 20, 2015, 10:04:11 pm »

Ordenar de mayor a menor según cantidad de apariciones las siguientes letras del alfabeto. Si empatan, ordenar alfabéticamente. Dar la respuesta en minúscula.

  • La cadena es la siguiente:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
qanwPVEAwnmSViNjTOLZPRRSaTAECnbArUjPmELcsWhdVMXYfdYLUGLpjLdOMdzvAEgfhXWNvRJZqMhlwocRPHKcwbUFJVjBjmLOwPVqjoYHLTtixQAnBHwuvfxDMPnAbpHBRNYTpKSzxLTWOusljvXidQjqbqjgcvpFMLbPPOkHdTTJbkswfdEeeFTbllerqvbFMpO
Se puede usar cualquier algoritmo y cualquier lenguaje!!

PD: Para que no se quejen el reto oficial es de la siguiente pagina No tienes permisos para ver links. Registrate o Entra con tu cuenta y siempre cambia solo me pareció un buen reto nada más que eso.

Ganadores:
  • 79137913
  • MF
« Última modificación: Septiembre 25, 2015, 06:08:23 pm por LKI »
Ser mejor cada día es mi meta

 =LKI=

Desconectado fermino

  • *
  • Underc0der
  • Mensajes: 330
  • Actividad:
    0%
  • Reputación 1
  • Aprendiz de todo, maestro de nada...
    • Ver Perfil
    • In The Middle Of Knowledge
« Respuesta #1 en: Agosto 21, 2015, 01:51:00 am »
Array con abc...xyz, strtolower, for, substr_count y listo (?

Sino, se puede hacer sin usar el array y substr_count con unos cuantos bucles, fijandose qué caracteres hay, etc...

Saludos!
-fermino-
Visita mi blog: No tienes permisos para ver links. Registrate o Entra con tu cuenta.

Desconectado rollth

  • *
  • Underc0der
  • Mensajes: 874
  • Actividad:
    0%
  • Reputación 16
  • El conocimiento es libre.
    • Ver Perfil
    • Whateversec
    • Email
  • Twitter: @RoloMijan
« Respuesta #2 en: Agosto 21, 2015, 05:27:50 am »
Cuando tenga mi ordenador lo hago, pero no se si lo he entendido bien, hay que hacer un Script que te cuenta cuantas letras hay de cada letra (independientemente de si está en mayúscula o minúscula) y dar un output en plan A(si es la que más veces había) C (si es la segunda) y así continuado?

Rollth
Buen hacker mejor persona.
No tienes permisos para ver links. Registrate o Entra con tu cuenta
No tienes permisos para ver links. Registrate o Entra con tu cuenta
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado 79137913

  • *
  • Co Admin
  • Mensajes: 634
  • Actividad:
    5%
  • Reputación 11
  • 4 Esquinas
    • Ver Perfil
    • Doors.Party
    • Email
  • Skype: fg_mdq@hotmail.com
« Respuesta #3 en: Agosto 21, 2015, 10:00:42 am »
HOLA!!!

Al fin retos de programacion!

En que lenguaje queres la respuesta?

GRACIAS POR LEER!!!
"Algunos creen que soy un bot, puede que tengan razon"
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

*Shadow Scout Team*                                                   No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado sancakoky

  • *
  • Underc0der
  • Mensajes: 5
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #4 en: Agosto 21, 2015, 10:35:42 am »
Pero porqué no leeis?
Lo dice bien claro. En cualquier lenguaje y primero las que mas se repiten y si empatan en orden alfabético.

Yo solo lo he leído una vez y me parece que se explica como el agua, no entiendo como os surgen dudas o preguntáis en que lenguaje si lo dice.

Desconectado 79137913

  • *
  • Co Admin
  • Mensajes: 634
  • Actividad:
    5%
  • Reputación 11
  • 4 Esquinas
    • Ver Perfil
    • Doors.Party
    • Email
  • Skype: fg_mdq@hotmail.com
« Respuesta #5 en: Agosto 21, 2015, 11:26:10 am »
HOLA!!!

Aqui mi solucion[VBS] por que no tengo ningun compilador aca:

Código: Visual Basic
  1. Dim ABC (25)
  2. Cadena = LCase(InputBox("Inserte cadena a analizar","RETO"))
  3. For X = 1 To Len (Cadena)
  4.     Letra = mid(Cadena,x,1)
  5.     NumLetra = asc(Letra)-97
  6.     ABC(NumLetra) = ABC(NumLetra) & Letra
  7. Next
  8.  
  9. For x = 24 To 0 Step -1
  10.     For y = 0 to x
  11.         If Len(ABC(y)) > Len(ABC(y + 1)) Then
  12.             temp = ABC(y+1)
  13.             ABC(y + 1) = ABC(y)
  14.             ABC(y) = temp
  15.         End If
  16.     Next
  17. Next
  18.  
  19. Do
  20.     Flag = True
  21.     For x = 0 to 24
  22.         If Len(ABC(x))=Len(abc(x+1)) Then
  23.             If Asc(Right(ABC(x),1)) < Asc(Right(ABC(x + 1),1)) Then
  24.                 temp = ABC(x)
  25.                 ABC(x) = ABC(x + 1)
  26.                 ABC(x + 1) = temp
  27.                 Flag = Flase
  28.             End If
  29.         End If
  30.     Next
  31. Loop Until Flag
  32.  
  33. For X = 0 to 25
  34.     Out = Out & RIGHT(ABC(x),1)
  35. Next
  36.  
  37. Inputbox "Resultado", "RETO", strreverse(Out)
  38.  

Para la cadena que colocas aqui sera:

lpjbvwmtadefhnoqrsxcukyzgi



@No tienes permisos para ver links. Registrate o Entra con tu cuenta

Perdon, no lo vi, debi haberlo salteado sin darme cuenta, pero esas no son formas de contestar, intenta mantener el respeto que es fundamental para el foro.

GRACIAS POR LEER!!!
« Última modificación: Agosto 21, 2015, 01:48:15 pm por 79137913 »
"Algunos creen que soy un bot, puede que tengan razon"
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

*Shadow Scout Team*                                                   No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado LKI

  • *
  • Underc0der
  • Mensajes: 61
  • Actividad:
    0%
  • Reputación 0
  • |Un día sin aprender nada, es un día perdido..|
    • Ver Perfil
    • Email
« Respuesta #6 en: Agosto 21, 2015, 04:48:08 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Cuando tenga mi ordenador lo hago, pero no se si lo he entendido bien, hay que hacer un Script que te cuenta cuantas letras hay de cada letra (independientemente de si está en mayúscula o minúscula) y dar un output en plan A(si es la que más veces había) C (si es la segunda) y así continuado?

Ejemplo la cadena es esta = "BBAAba";  Es indiferente las mayusculas y minusculas se cuenta como la misma letra
 b=> 3
 a=>3
solucion => ab
Empataron entonces hay que devolverlos en orden alfabético y siempre dar la solución en minúscula.
« Última modificación: Agosto 21, 2015, 10:16:18 pm por LKI »
Ser mejor cada día es mi meta

 =LKI=

Desconectado LKI

  • *
  • Underc0der
  • Mensajes: 61
  • Actividad:
    0%
  • Reputación 0
  • |Un día sin aprender nada, es un día perdido..|
    • Ver Perfil
    • Email
« Respuesta #7 en: Agosto 21, 2015, 11:45:02 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
HOLA!!!

Aqui mi solucion[VBS] por que no tengo ningun compilador aca:

Código: Visual Basic
  1. Dim ABC (25)
  2. Cadena = LCase(InputBox("Inserte cadena a analizar","RETO"))
  3. For X = 1 To Len (Cadena)
  4.     Letra = mid(Cadena,x,1)
  5.     NumLetra = asc(Letra)-97
  6.     ABC(NumLetra) = ABC(NumLetra) & Letra
  7. Next
  8.  
  9. For x = 24 To 0 Step -1
  10.     For y = 0 to x
  11.         If Len(ABC(y)) > Len(ABC(y + 1)) Then
  12.             temp = ABC(y+1)
  13.             ABC(y + 1) = ABC(y)
  14.             ABC(y) = temp
  15.         End If
  16.     Next
  17. Next
  18.  
  19. Do
  20.     Flag = True
  21.     For x = 0 to 24
  22.         If Len(ABC(x))=Len(abc(x+1)) Then
  23.             If Asc(Right(ABC(x),1)) < Asc(Right(ABC(x + 1),1)) Then
  24.                 temp = ABC(x)
  25.                 ABC(x) = ABC(x + 1)
  26.                 ABC(x + 1) = temp
  27.                 Flag = Flase
  28.             End If
  29.         End If
  30.     Next
  31. Loop Until Flag
  32.  
  33. For X = 0 to 25
  34.     Out = Out & RIGHT(ABC(x),1)
  35. Next
  36.  
  37. Inputbox "Resultado", "RETO", strreverse(Out)
  38.  

Para la cadena que colocas aqui sera:

lpjbvwmtadefhnoqrsxcukyzgi



@No tienes permisos para ver links. Registrate o Entra con tu cuenta

Perdon, no lo vi, debi haberlo salteado sin darme cuenta, pero esas no son formas de contestar, intenta mantener el respeto que es fundamental para el foro.

GRACIAS POR LEER!!!

Es correcto felicitaciones!!
Ser mejor cada día es mi meta

 =LKI=

Desconectado sancakoky

  • *
  • Underc0der
  • Mensajes: 5
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #8 en: Agosto 22, 2015, 11:26:31 am »
Tienes razon @No tienes permisos para ver links. Registrate o Entra con tu cuenta y pido disculpas. No se si tenia un mal día o que me paso por que a todos nos puede pasar que nos saltemos algo al leer por prisas o por lo que sea. Y los demas tambien pido disculpas por la contestación tan desagradable.

Bueno comentar que llevo toda la mañana con este reto y no he tenido huev.s de conseguirlo. Dar las gracias al compañero @No tienes permisos para ver links. Registrate o Entra con tu cuenta y haber si se anima él o alguien mas a subir mas retos de este tipo.

Voy a pasarme por el subforo de python haber si alguien me hecha una mano con el dichoso reto ya que veo que me va a quitar el sueño y no lo consigo.

SUERTE PARA QUIEN LO INTENTE!
« Última modificación: Agosto 22, 2015, 11:28:20 am por sancakoky »

Desconectado rollth

  • *
  • Underc0der
  • Mensajes: 874
  • Actividad:
    0%
  • Reputación 16
  • El conocimiento es libre.
    • Ver Perfil
    • Whateversec
    • Email
  • Twitter: @RoloMijan
« Respuesta #9 en: Agosto 22, 2015, 04:48:26 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Tienes razon @No tienes permisos para ver links. Registrate o Entra con tu cuenta y pido disculpas. No se si tenia un mal día o que me paso por que a todos nos puede pasar que nos saltemos algo al leer por prisas o por lo que sea. Y los demas tambien pido disculpas por la contestación tan desagradable.

Bueno comentar que llevo toda la mañana con este reto y no he tenido huev.s de conseguirlo. Dar las gracias al compañero @No tienes permisos para ver links. Registrate o Entra con tu cuenta y haber si se anima él o alguien mas a subir mas retos de este tipo.

Voy a pasarme por el subforo de python haber si alguien me hecha una mano con el dichoso reto ya que veo que me va a quitar el sueño y no lo consigo.

SUERTE PARA QUIEN LO INTENTE!

Yo lo haré mañana que ya tendré mi pc (por fin), puedes mirar el código de @No tienes permisos para ver links. Registrate o Entra con tu cuenta para hacerte una idea, o el mío cuando lo haga mañana, saludos.

Rollth
Buen hacker mejor persona.
No tienes permisos para ver links. Registrate o Entra con tu cuenta
No tienes permisos para ver links. Registrate o Entra con tu cuenta
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado rochesto

  • *
  • Underc0der
  • Mensajes: 14
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #10 en: Septiembre 16, 2015, 03:50:44 pm »
Buenas,  aprovechando el reto, me he puesto al lio de los algoritmos de ordenación.
Aquí os dejo el código con los algoritmos: selección, insercción, shell y quicksort.

Estoy aprendiendo por lo que seguro que hay muchos errores , no sean crueles :o  ;D


Código: C++
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. void seleccion(string&);
  7. void insercion(string&);
  8. void ordenacion_shell (string &);
  9. void quicksort( string&, int, int );
  10.  
  11. int main()
  12. {
  13.  
  14.     string str = "qanwPVEAwnmSViNjTOLZPRRSaTAErCnbArUjPmELcsWhdVMXYfdYLUGLpjLdOMdzvAEgfhXWNvRJZqMhlwocRPHKcwbUFJVjBjmcsWhdVMXYfdYLUGLpjLdOMdzvAEgfhXWNvRJZqMhlwocRPHK";
  15.  
  16. //Cambiar a minusculas  todas las letras
  17.     string::size_type l;
  18.     for (l = 0; l < str.length(); l++)
  19.     {
  20.         str[l] = tolower(str[l]);
  21.     }
  22. //~ Fin minusculas
  23.  
  24. //METODOS DE ORDENACION
  25.  
  26.         //Ordenación por selección
  27.     //seleccion(str);
  28.  
  29.         //Ordenación por inserción
  30.     //insercion(str);
  31.  
  32.         //Ordenación por shell
  33.     //ordenacion_shell(str);
  34.  
  35.         //Ordenación rápida QUICKSOFT
  36.     quicksort(str, 0, str.length()-1);
  37.  
  38. //~ FIN METODOS ORDENACION
  39.  
  40.  
  41. //Contador
  42.     int contador = 0;
  43.     char letra = 'a';
  44.  
  45.     for (int i = 0; i < str.length(); i++)
  46.     {
  47.         if(str[i] == str[i+1]){
  48.             contador++;
  49.         }else{
  50.             cout << letra << ": " << contador+1 << endl;
  51.             contador = 0;
  52.             letra++;
  53.         }
  54.     }
  55. //~ Fin contador
  56.  
  57.     return 0;
  58. }
  59.  
  60. //Ordenación por selección
  61. void seleccion(string &str){
  62.  
  63.     string::size_type i, j, k;
  64.     for(i = 0; i < str.length(); i++){
  65.         for(k= i, j = i +1; j < str.length(); j++){
  66.  
  67.             if (str[j] < str[k]){
  68.  
  69.                 char aux = str[i];
  70.                 str[i] = str[j];
  71.                 str[j] = aux;
  72.  
  73.             }
  74.         }
  75.     }
  76. }
  77.  
  78. //Ordenacion por insercion
  79. void insercion(string &str)
  80. {
  81.     char tmp;
  82.     int j = 0;
  83.     for (int i = 1; i < str.length(); i++){
  84.         tmp = str[i];
  85.         j = i -1;
  86.         while( j>=0 && tmp < str[j])
  87.         {
  88.             str[j+1] = str[j];
  89.             j--;
  90.         }
  91.         str[j+1] = tmp;
  92.     }
  93. }
  94.  
  95.  
  96. //Ordenacion por shell
  97. void ordenacion_shell (string &str)
  98. {
  99.     int incr = str.length()/2, p, j;
  100.     char tmp;
  101.     do
  102.     {
  103.         for (p = incr; p < str.length(); p++)
  104.         {
  105.             tmp = str[p];
  106.             j = p - incr;
  107.             while ((j >= 0) && (tmp < str[j]))
  108.             {
  109.                 str[j + incr] = str[j];
  110.                 j -= incr;
  111.             }
  112.             str[j + incr] = tmp;
  113.         }
  114.         incr /= 2;
  115.     }
  116.     while (incr > 0);
  117. }
  118.  
  119.  
  120. //Ordenacion rapida QUICKSORT
  121. void quicksort(string &array, int start, int end)
  122. {
  123.     int pivote, left, right;
  124.     char temp;
  125.  
  126.     if (start < end){
  127.        
  128.  
  129.         pivote = start;
  130.         left = start;
  131.         right = end;
  132.         while(left < right)
  133.         {
  134.             while(array[right] > array[pivote]){
  135.                 right--;
  136.             }
  137.             while(left<right && array[left] <= array[pivote]){
  138.                 left++;
  139.             }
  140.  
  141.             if (left < right){
  142.                 temp = array[left];
  143.                 array[left] = array[right];
  144.                 array[right] = temp;
  145.             }
  146.         }
  147.  
  148.         temp = array[right];
  149.         array[right] = array[pivote];
  150.         array[pivote] = temp;
  151.  
  152.         pivote = right;
  153.  
  154.  
  155.         quicksort(array, start, pivote-1);
  156.         quicksort(array, pivote+1, end);
  157.     }
  158. }
  159.  
  160.  

Desconectado 79137913

  • *
  • Co Admin
  • Mensajes: 634
  • Actividad:
    5%
  • Reputación 11
  • 4 Esquinas
    • Ver Perfil
    • Doors.Party
    • Email
  • Skype: fg_mdq@hotmail.com
« Respuesta #11 en: Septiembre 17, 2015, 01:31:09 pm »
HOLA!!!

@No tienes permisos para ver links. Registrate o Entra con tu cuenta :

No sere duro, solo te dire que en los retos se estila hacer una UNICA funcion sin funciones externas, por que es la mejor forma para aprender.

GRACIAS POR LEER!!!
"Algunos creen que soy un bot, puede que tengan razon"
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

*Shadow Scout Team*                                                   No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado mf

  • *
  • Underc0der
  • Mensajes: 1
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #12 en: Septiembre 24, 2015, 11:17:19 am »
buenas,

Código: Python
  1. #stringtoConvert= raw_input("\n[+] Reto underc0de\nEnter string, please: ")
  2. stringtoConvert= "qanwPVEAwnmSViNjTOLZPRRSaTAECnbArUjPmELcsWhdVMXYfdYLUGLpjLdOMdzvAEgfhXWNvRJZqMhlwocRPHKcwbUFJVjBjmLOwPVqjoYHLTtixQAnBHwuvfxDMPnAbpHBRNYTpKSzxLTWOusljvXidQjqbqjgcvpFMLbPPOkHdTTJbkswfdEeeFTbllerqvbFMpO"
  3. stringtC= stringtoConvert.lower()
  4. diccio= {}
  5. resultado= ""
  6. dicOrdenado= []
  7. cMax= 0
  8.  
  9. for a in stringtC:
  10.         if not diccio.has_key(a):
  11.                 diccio[a] = 1
  12.         elif diccio.has_key(a):
  13.                 cont = (diccio[a]) + 1
  14.                 diccio[a] = cont
  15.         if diccio[a] > cMax:
  16.                 cMax = diccio[a]
  17. ldic= diccio.items()
  18. cDin= cMax
  19.  
  20. while len(dicOrdenado) != len(diccio):
  21.         cont= 0
  22.         for letra in ldic:
  23.                 if letra[1] == cDin:
  24.                         dicOrdenado.append(letra)
  25.                 cont= cont + 1
  26.         cDin = cDin - 1
  27. cDin= cMax
  28.  
  29. while len(resultado) != len(dicOrdenado):
  30.         mismoEquipo= []
  31.         for letra in dicOrdenado:
  32.                 if letra[1] == cDin:
  33.                         mismoEquipo.append(letra[0])
  34.                         mismoEquipo= sorted(mismoEquipo)
  35.         for leter in mismoEquipo:
  36.                 resultado= resultado +leter
  37.         cDin = cDin - 1
  38. print resultado
  39.  

sl2 :)

Desconectado LKI

  • *
  • Underc0der
  • Mensajes: 61
  • Actividad:
    0%
  • Reputación 0
  • |Un día sin aprender nada, es un día perdido..|
    • Ver Perfil
    • Email
« Respuesta #13 en: Septiembre 25, 2015, 06:07:27 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
buenas,

Código: Python
  1. #stringtoConvert= raw_input("\n[+] Reto underc0de\nEnter string, please: ")
  2. stringtoConvert= "qanwPVEAwnmSViNjTOLZPRRSaTAECnbArUjPmELcsWhdVMXYfdYLUGLpjLdOMdzvAEgfhXWNvRJZqMhlwocRPHKcwbUFJVjBjmLOwPVqjoYHLTtixQAnBHwuvfxDMPnAbpHBRNYTpKSzxLTWOusljvXidQjqbqjgcvpFMLbPPOkHdTTJbkswfdEeeFTbllerqvbFMpO"
  3. stringtC= stringtoConvert.lower()
  4. diccio= {}
  5. resultado= ""
  6. dicOrdenado= []
  7. cMax= 0
  8.  
  9. for a in stringtC:
  10.         if not diccio.has_key(a):
  11.                 diccio[a] = 1
  12.         elif diccio.has_key(a):
  13.                 cont = (diccio[a]) + 1
  14.                 diccio[a] = cont
  15.         if diccio[a] > cMax:
  16.                 cMax = diccio[a]
  17. ldic= diccio.items()
  18. cDin= cMax
  19.  
  20. while len(dicOrdenado) != len(diccio):
  21.         cont= 0
  22.         for letra in ldic:
  23.                 if letra[1] == cDin:
  24.                         dicOrdenado.append(letra)
  25.                 cont= cont + 1
  26.         cDin = cDin - 1
  27. cDin= cMax
  28.  
  29. while len(resultado) != len(dicOrdenado):
  30.         mismoEquipo= []
  31.         for letra in dicOrdenado:
  32.                 if letra[1] == cDin:
  33.                         mismoEquipo.append(letra[0])
  34.                         mismoEquipo= sorted(mismoEquipo)
  35.         for leter in mismoEquipo:
  36.                 resultado= resultado +leter
  37.         cDin = cDin - 1
  38. print resultado
  39.  

sl2 :)


Es correcto !! Felicitaciones !!  ;D
Ser mejor cada día es mi meta

 =LKI=

 

¿Te gustó el post? COMPARTILO!



Reto "Crackea el Menú"

Iniciado por Zekro

Respuestas: 2
Vistas: 1759
Último mensaje Noviembre 29, 2012, 05:57:24 pm
por Zekro
[Solucionario] Reto "Descubre la frase"

Iniciado por q3rv0

Respuestas: 10
Vistas: 3873
Último mensaje Agosto 13, 2012, 04:24:40 pm
por hdbreaker
Un Crackme que hice hace tiempo, haber si alguien lo resuelve [RETO]

Iniciado por LauBuru

Respuestas: 2
Vistas: 1990
Último mensaje Abril 04, 2016, 12:07:45 pm
por rush
[RETO] Wargame Cifrado - Nivel facil/medio

Iniciado por fermino

Respuestas: 12
Vistas: 3542
Último mensaje Septiembre 25, 2014, 06:25:33 pm
por fermino
[RETO] Desofusca mi codigo y dime por que siempre gano ;)

Iniciado por 79137913

Respuestas: 9
Vistas: 3808
Último mensaje Febrero 15, 2013, 07:05:19 pm
por alexander1712