#210 Si lo haces a brute force sobre el número de pasos olvídate, si lo haces a brute force sobre el número de ciclos tarda pero termina.
#211 Vale, me olvido Estoy leyendo en reddit y dicen que la solucion puede tardar mas de un dia con lo de los pasos.
edit: bueno he hecho ahora un pequeño cambio en el codigo, en vez de contar los steps saco el numero de ciclos y lo multiplico por la longitud de instrucciones (LRLRRRL). Haciendolo asi en el input pequeño tambien me sale el mismo resultado, veamos si con el input grande saco algo.
@sergioRG De cuanto tiempo estaríamos hablando asi aproximadamente? 5 minutos? 1 hora?
Descubrí la biblioteca esta para correr los iterators en paralelo y es una salvajada lo que mejoran los procesos. Ahora se lo estoy metiendo a todo xD
#214 No se ve lo que has puesto en el segundo spoiler, creo que la imagen es privada y solo puedes verla tu (private-user-images.githubusercontent.com...)
#215 Hm... ¿la estás viendo desde el móvil? Parece ser que es algo del encoding del nombre para móvil. Vamos viene a ser que tiran los tests en 470ms xD
#216 He probado en movil y navegador de escritorio. Prueba a ver tu post en modo incognito a ver si tu lo puedes ver.
Vaya al de hoy le estaba buscando la forma de optimizarlo, pero la solucion directa, segun esta explicada en el enunciado, tarda poco en ejecutarse
Para los que le estéis dando a JavaScript y queráis hacer movidas a fuerza bruta, hay gente usando GPU.js y pueden sacar el 5 part 2 en apenas unos segundos xDDD
El de hoy Dia 10 me ha gustado mucho
Por si alguien no consigue solucionar parte 2, aqui una pista para inspirarse
Uno que se baja del carro xD Mi idea feliz era tirar de recursividad y que cada bifurcación se resolviera "sola" al no dar con el path viable y sólo llegase el path viable al encontrarse con 'S', que sería el retorno, pero peta ya en el ejemplo así que... igualmente cambiar al enfoque iterativo ahora y usar dfs + VecDeque para llevar el offset de los pasos al visitar los path fallidos me costaría un te quiero.
Gracias a #224 y gracias por la explicación ampliada y el dibujo #226 !
Me tomaré un descansito para enfriar el cerebro y volveré a darle una vuelta a ver como puedo adaptar mi código para meter todo esto.
Edit: Resuelto! Al final no me he tomado el descanso, estaba viendo la solución a la vista.
Bonita fumada.
D11, he intentando minimizar las lineas de codigo, comprobar las columnas y filas que vas dejando detras se puede hacer apuntando al elemento que toca cada vez e ir subiendo el indice pero no queria complicarme mas
Llevaba unos meses practicando problemas en leetcode (binary search, dynamic programming, graphs, ..), cosa que me ha servido muchisimo para el problema de hoy.
Una cosa que veo en paginas de problemas es que ponen Hints/Pistas para que aunque se te encalle el problema, puedas obtener una pista para almenos seguir con algo. En esta voy a dar un par por si alguien le va bien
Dia 12
Y mis comentarios sobre la solucion de cada parte:
Me ha quedado un espagueti horrible, a ver si lo mejoro. Es la parte 2, pero cambiando las listas replicadas por las originales tienes la parte 1
Dia 13
Por como era el input del problema (...##.##) pensaba que estaba mirando el enunciado del dia anterior xD
El del día 12 lo tengo que rehacer, ya que hice un acercamiento demasiado naive en la primera parte y luego me atasqué buscando alguna forma de trabajar con conjuntos o algo así.
Dia 13: me estoy pasando en la cuenta de la parte 1. Y ni idea de por que.
Leo en Reddit que dicen que o hay un reflejo en el vertical o en el horizontal, pero yo tengo este input:
####...
##.#...
####...
.#.#...
##.####
##.##..
#####..
##.#.##
.##....
.##.###
##..#..
#..####
#...#..
Y tiene reflejo en horizontal: lineas 0-2
y en vertical: columnas 5-6
Que me estoy perdiendo? El enunciado me lleva loco
Edit: vale, un reflejo tiene que reflejarse entero. En mi ejemplo el horizontal no vale porque hay una linea que no se refleja (la linea 1).