Discover and read the best of Twitter Threads about #AdventOfCode

Most recents (24)

El octavo de #AdventOfCode parte 2 en SQL. Un poco ñapas para mi gusto pero es lo que hay!

Empezamos como siempre.. Image
Limpiamos linea alinea y separamos x, y, altura para cada arbol usando CTEs en secuencia. Image
Cruzamos cada arbol con su scan a derecha, izquierda, arriba y abajo con sub-consultas correlacionadas. Hay que cambair el orden de los que devuleven para que quedan en funcioón del punto de vista. Cada resultado se agrega en un array. Image
Read 11 tweets
I just completed "Tuning Trouble" - Day 6 - Advent of Code 2022 adventofcode.com/2022/day/6 #AdventOfCode

Seguimos a lomos del SQL, a veces bien a veces hay que tirar de constorsionismos imposibles (o mi nivel no me dá para ello) Image
Empezamos como siempre... Image
Limpiamos el pescado, enumeramos y nos preparamos,,, Image
Read 9 tweets
Le saqué algo en claro al partido de España...

#AdventOfCode 5 Supply Stacks en SQL puro (PostgreSQL)

Si te gusta el SQL lo vas a flipar (creo) , sígueme en este triste historia (por lo de "La Roja") +
Empezamos como siempre, y toca cargar el fichero de test que ya tiene tela... Image
Empezamos enumerando las lineas del fichero (ya en la tabla de input), quedandonos con la parte de las pilas y calculando la longitud maxima de entre todas las líneas (por si caso no eran iguales) ImageImage
Read 26 tweets
La primera parte de Camp Cleanup es obscenamente fácil ¿Se vecina uno de esos giros famosos del #AdventOfCode ?

De momento os cuento como lo hice en SQL

#AdventOfCode22
Quien no sepa que esto que lea mis otros hilos porque ya va siendo lo mismo todo el rato
Tan facil que no lo voy a despiezar pues creo que se entiende de un vistazo y además esta comenetado. Convierte en rangos y comprueba inclusiones entre ellos.

Ridiculamente fácil
Read 8 tweets
Bueno, de vuelta al #AdventOfCode 3 Rucksack Reorganization

Empezamos leyendo los datos con ayuda de una tabla y restricciones adecuadas..
He creado una vista con la solución y así la reuso para pasar el test y luego el fichero de entrada del desafío.
Seguidamente os explico, aquí la muestro plegada junto con el código completo.
Empiezo mapeando las prioridades ['a'..'z'] -> [1..26] y ['A'..'Z'] -> [27..52] con dos consultas sencillas y el operador UNION ALL
Read 23 tweets
真是一个能帮助快速出 PoC 功能的小助手🤯
测试了半天,chatGPT实现小需求、修Bug、用TDD写代码、多语言实现都没有问题,甚至注释都给你写好了,这些代码大部分情况都是可以直接work的。虽然能力可能不及senior的程序员,但是一般Junior的程度可能真到了,或者很快就到了,以后接卡实现需求甚至直接commit代码都很完全有可能发生🤯
Read 5 tweets
Bueno pues aquí voy con el día 2 del #adventofcode y seguimos en #SQL. Ahora aprovecharé las "constraints" para asegurarme que leo bien las cosas..
Necesito además calcular los resultados de cada mano según me indican
Calculo todas las manos y las añado a la tabla de scores.
Read 15 tweets
Bueno, pues estaba dejando pasar unos días para evitar spoilers y meditando si hacer en #Python o en #SQL el #AdventOfCode de este año
Así q estoy tonteando con el SQL e hice la 1ª parte del 1er día.. Como tampoco soy un fiera en SQL me lo he currado con CTEs paso a paso (YMMV) Image
Empecé con un pequeño script que prepara una tabla para leer la entrada. Esta vez parsear la entrada es fácil asi q no me voy a pegar un tiro en el pié al elegir SQL, no sé qué pasará después..
La tabla es temporal y se borrarrá sola al hacer el COMMIT al final del script + Image
Metemos los valores de test en un ficherito
y vemos que es va a ser bastante fácil leer esto.. Image
Read 18 tweets
✅ Fully automated solving & submission for #AdventOfCode using #OpenAI text-davinci-003
Can't wait to see how it handles day 2! 🫣 Image
Success on day 3! 🥳 10 seconds for part 1! ⭐️
Let's accelerate problem solving, and by extension the automation of the developer profession! ImageImage
The AI-generated solutions:
i.imgur.com/Xd2ELkC.png
Read 3 tweets
Bueno pues aqui voy con mi particular acercamiento al snippet de @thinbaker con la librería Pillow.

Claro que como ya adelanté, yo he integrado el código del tocayo en mi herramientilla/playground de python #Python
Ya dije q suelo iterar sobre un concepto en cada oportunidad. Como veis hay un fichero principal y una "carga de pago" consistente en uno o varios comandos como modulos independientes...

En este caso hay tres snippets sacados de Twitter integrados en la misma herramienta..
El modulo main se encarga de preparar la estrutura de argparse, aumentarla con "subparsers" para cada comando que se añada y de comprobar la cmdline y bifurcar al comando apropiado... Es casi lo mismo que visteis para el #AdventOfCode
Read 19 tweets
Atribuyen a Edison la frase: “I will not say I failed 1000 times, I will say that I discovered there are 1000 ways that can cause failure.” Pues yo he estado haciendo lo mismo en los ratos libres de estos ajetreados días... +

#AdventOfCode2021 #AdventOfCode
Por las noches mientras veía alguna peli del Prime time he estado programando mi particular acercamiento al problema 15 haciendo stiching de soluciones para encontrar la solución completa al #AoC +
La dificultad no provenía del Floyd Warshall sino de como pegar las soluciones entre si propagando los costos del tal manera que no me sorprendian los fallos, hasta que aburrido/estancado pensé programar el dijkstra para tener la solución y comparar el devenir de cada código.. +
Read 50 tweets
I just completed "Extended Polymerization" - Day 14 - Advent of Code 2021 adventofcode.com/2021/day/14 #AdventOfCode

Este tiene un parecido a Lanter Fish en su crecimiento rápido en la 2º parte que obliga a un replanteamiento..

*SPOILERS *SPOILERS*

#AdventOfCode #AdventOfCode2021
El parser: secuencia de parsers "polymerP" y "newlineP >> rulesP" que capturan tanto la plantilla como las reglas. Creamos todos los subparser necesarios. Leed la función desde el final hacia arriba y veréis la "estructura"
la parte 1 "del tirón". Leemos las reglas y preparamos un diccionario.. BB -> C. En cada paso de polimerización convertimos el pólimero en pares(zip) y aplicamos la conversión a cada par según el dict. El resultado crece rápidamente por lo que abreviamos la salida si len > 60
Read 21 tweets
I just completed "Transparent Origami" - Day 13 - Advent of Code 2021 adventofcode.com/2021/day/13 #AdventOfCode
El parser como siempre: construimos partes como número, coordenada etc.. Aquí la novedad es instructionP que parsea un "fold" y devuelve un lambda que realiza el doblado propiamente dicho "lambda a: fold(a, x, y)" donde x y son el eje e y la fila ó columna respectivamente.
para construir la hoja desde las coordenadas suminstradas tenemos la función data_to_sheet bastante directa (reseñar que hay que averiguar primero la dimensión de las lista de listas)
Read 12 tweets
I just completed "Passage Pathing" - Day 12 - Advent of Code 2021 adventofcode.com/2021/day/12 #AdventOfCode

Bueno al final un generador me ha salvado de hacer una burrada aunque la versión no ha quedado demasiado fea...

*SPOILERS* * SPOILERS*

#AdventOfCode #adventofCode2021
Bueno empecemos por el parser...
Preparamos un diccionario con las conexiones entre nodos (si a -> b entonces b -> a tambien) y luego llamamos a la función traverse que devuelve un generador de rutas que usamos para contabilizar la respuesta y mostrar las rutas al asuario.
Read 12 tweets
I just completed "Syntax Scoring" - Day 10 - Advent of Code 2021 adventofcode.com/2021/day/10 #AdventOfCode

Luego os lo cuento...

*SPOILERS* *SPOILERS*

#AdventOfCode2021 #adventofcode
El parser!! No me canso de quitarme problemas leyendo la entrada con un poco de cuidado (incluso he tratado de correr el fichero de un puzle con el código de otro y esto ayuda a que nada que no tenga que pasar "pase"...
Leemos todos los "chunks" y de aquellos corruptos calculos su "score" an base al caracter que no cuadraba en el lexing.. Usamos un dict para las puntuaciones +
Read 15 tweets
I just completed "Smoke Basin" - Day 9 - Advent of Code 2021 adventofcode.com/2021/day/9 #AdventOfCode
problemas de lectura comprensiva? yo, a veces, lo que me ha llevado a darme de bruces con el puzle (habiendo pasado el test) hasta que quité las diagonales que nadie me habia pedido 🤨

Veamos...

*SPOILERS* *SPOILERS*

#AdventOfCode2021 #adventofcode
El parser. aprovechamos para probar estrategias de sanitización como por ejemplo leer la primera linea y adaptar el parser al vuelo para que las demas sean exactamente de la misma longitud +
Read 15 tweets
I just completed "Seven Segment Search" - Day 8 - Advent of Code 2021 adventofcode.com/2021/day/8 #AdventOfCode
Otro trabajo "guarro" y que conste que quise hacerlo de una forma elegante pero acabé haciéndolo en plan "el juego de la imitación" buscando el "Heil JS!" y esperando pacientemente a que la "bomba" cuadrase todo..

Veamos..

*SPOILERS* *SPOILERS*

#AdventOfCode #AdventOfCode2021
el parser como siempre para leer todo sin errores que ya bastante lío nos van a formar los amigos de Advent of Code..
Read 16 tweets
I just completed "The Treachery of Whales" - Day 7 - Advent of Code 2021 adventofcode.com/2021/day/7 #AdventOfCode
Ha sido muy guarro y no me ha gustado (he usado la fuerza bruta) asi que bueno ya daré con la solución mas elegante que seguramente será una función conveza o algo similar 😓

Veamos como quedó..

*SPOILERS* *SPOILERS*

#AdventOfCode #AdventOfCode2021
El parser...
Read 18 tweets
La 1º parte del Lanterfish ha sido facilisima (debe ser la segunda la puñetera)

Veamos..

*SPOILERS* *SPOILERS*

#adventodcode #AdventOfCode2021
El parser es mas bien directo ya que el formato es trivial a estas alturas "2,3,4,5,2" 🧐
el ciclo de vida del "lanterfish" es cuestion de entenderlo bien.. una vez hecho la implementacion es trivial. El pez evoluciona estados y opcionalmente tienen un vástago...
Read 14 tweets
Bueno pues "Hydrothermal venture" no ha resultado muy complicado, me temo que voy a flipar cuando llegue al 6...

Os cuento...

*SPOILERS* *SPOILERS

#AdventOfCode2021 #adventofcode
El parser de parsy se come la lista de segmentos de una tacada, aqui nada que ver salvo que quieras aprender un poco de Parsy.
Convierto los segmentos x0, y0 -> x1, y1 a (x0, y0, x1, y1)
filtramos los segmentos vert. y horiz. calculamos el grid necesario y dibujamos cada segmento en el grid (expandiendo horizontal o verticalmente en puntos (x, y) y anotando 1 en el grid por cada paso.
Finalmente contamos los solapamientos.
(código sin cometarios que me canso).
Read 15 tweets
Have you ever wanted to run a query on your NumPy array?

Like:
• where are the numbers smaller than 0?
• How many numbers are positive?
🤔

NumPy has the where method for exactly that!
🤩👍🏾

[1 min]⚡️

1/5🧵 #Python
The where method receives:
• condition (a < 0)
• Operation if cond is True (x)
• The "else" operation (y)

You only need the condition, the rest is optional*

2/5🧵
The return value has two possibilities:
• If only condition is used, returns an array with the coordinates of when the condition is true.
• If x and y are used, then it returns the input array with all the changes applied

3/5🧵
Read 5 tweets
Bueno ya me levanté de la cama y me pasé el Gigant Squid part1

pues vamos allá...

*SPOILERS* *SPOILERS*

#adventofcode #AdventOfCode2021
El parser, este es una bestia de parser se come el fichero entero y digiere la lista de números y todas las tarjetas de juego que se encuentre.. Que mas puedo decir, ejercito casi todo lo que tienen Parsy y como dice @FabioskySG "Hard work pays off" +
Ahora os enseñaré el cuerpo de la parte 1. Construyo instancias de la clase board y luego chequeo todos los números hasta que una de ellas devuelve "Bingo!" tras lo cual obtengo el score y ya hemos terminado. Sencillo gracias a q el trabajo esta en los métodos de la clase Board.+
Read 19 tweets
El #AoC numero 2.

Os lo cuento brevemente, y la brevedad creedme ha sido una bendición porque no puedo teclear demasiado tiempo..

Vamos allá!

*SPOILERS* *SPOILERS*

#AdventOfCode #AOC2021
El parser se asegura que leemos los comandos correctamente y que no hay nada mas. Sanitizando la entrada me ahorro muchos chequeos en otras partes.. Un par de test unitarios muy básicos y a correr
Si las lambdas fueran mas expresivas me habia ahorrado las subfunciones (quizás con una namedtuple...). por lo demás es la clasica propagación del estado en bucle +
Read 9 tweets
🧵 Our head instructor @dontusethiscode is trying #AdventOfCode using only NumPy/pandas.

Let's see how he does!

❤️ Like → “Neat!”/“That's how I did it!”
🔄 RT → “Hold up; why'd he do it that way…?”
💬 Comment → “Gimme the step-by-step…”
😎 QT → “I did it better!”
Day #1, Part #1

Summary:
- `Series` operations

Code: gist.github.com/dutc/c08a1fc2c… Image
Day #1, Part #2

Summary:
- `.rolling` window calculation pandas.pydata.org/docs/reference…

Code: gist.github.com/dutc/c08a1fc2c… Image
Read 9 tweets

Related hashtags

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!