Advent of Code 2023: ChatGPT-4 turbo edition

Frankicia

He estado mas entendiendo el enunciado que otra cosa. Estoy cuajao.

Mandarino

#239 El problema que tienes es que el "mirror" siempre esta entre 2 filas o 2 columnas, nunca encima de 1.

Por ejemplo en este ejemplo mas pequeño: aqui no hay ningun mirror horizontal porque el mirror no puede estar "justo en la fila 1", tiene que estar entre 0-1 o 1-2.

####..#
##.#.#.
####..#

Lo que hay es un mirror vertical entre la 0 y la 1

1 1 respuesta
Frankicia

#242 Si si, lo he pillado justo al postear xd. Gracias igualmente!

1
Mandarino

Dia 14
Bastante entretenido el de hoy!

Parte 1
Parte 2
2 respuestas
Frankicia

#244 parte2:

spoiler
1 respuesta
Mandarino

#245

spoiler
2 respuestas
Frankicia

#246

spoiler
Frankicia

#246

spoiler
1 respuesta
Mandarino

#248

spoiler
Flashk
Día 14
1 respuesta
Mandarino

#250 Me pasó igual que a ti con el problema del "tetris", esa vez me costó bastante hacerlo. El "truco" ya fue aprendido y aplicado para esta vez :)

1 respuesta
Flashk

#251 +1

spoiler
B

Me ha pillado todo el día fuera de casa, a ver que no se me acumule el curro mañana

R

Yo voy bastante atrasado.
Me faltan las del puente de diciembre y estuve dos dias intentando sacar la segunda estrella del dia 12 (no consigo reducir la complejidad del calculo).
Hoy he decidido hacer skip hasta el dia actual y ha sido mas engaging.
Tienen un problema con los enunciados, para la parte 1 ya habia implementado los movimientos de la 2 pensando que primero de todo me tenia que asegurar que las rocas no pudiesen avanzar mas al norte.

C# parte 2
1
R

Bueno, me he puesto al dia un poco. Me quedan pendientes el 10 parte 2 y el 12 las dos partes. Ya veremos si vuelvo a ellos xD

1
Frankicia

Viernes del chill :beach_umbrella::sunglasses:

Mandarino

Era facil hoy si, pero me ha costado un rato entender el enunciado de la parte 2 :sweat_smile:

Parte2
Mandarino

Se vienen dias duros proximamente? :smiling_imp:

1 respuesta
Flashk

#258 Si, se vienen, a partir del día 15-16 siempre se nota un poco la subida la dificultad. ¡Y encima mañana es finde! vaya hostia se viene XD

R

Vaya con el enunciado de la parte 2 del dia 15. He ido a leer el inpuit, output y lo que hay alrederor un poco y nada, ha tocado leer mas enunciado

spoiler
Mandarino

Dia 16
Todavia no toca el superdificil xD

Parte1
Part2

Por cierto, mirando el leaderboard .. no entiendo como alguien puede hacer la parte1 en 2 minutos. Si ya MINIMO leyendo en diagonal y con suerte de no escaparte nada (con suerte) tardarias 20s en leer, como puedes implementar todo eso en 1m30s? xD Tienen que tenerlo ya implementado y hacer copypaste+adaptar o algo , o usar chatgpt etc.

1 1 respuesta
Frankicia

#261 parte 2

spoiler

El leaderboard, chatGPT descarado, este es posible que una IA fuese capaz de hacerlo.

1 respuesta
Mandarino

#262

Parte2
1 respuesta
Frankicia

#263

spoiler
1
Zentakki

A mi esta mierda me está jodiendo la autoestima. No soy programador profesional, he aprendido por mi cuenta porque me gusta.

Aunque me fuese costando iba sacando los días, pero hay algunos que no consigo resolver el puzzle o me funciona con los ejemplos pero con el input de 1000 lineas no va, no consigo ver porque no tira y me pongo a mirar código de otra gente y no lo entiendo ni leyendo 100 veces el código ni la explicación. En 10 lineas hacen lo que a mi me ocupa 100.

Se que no puedo compararme con la gente que está en los comentarios mas votados de reddit, que será gente que hace esto a menudo o lleva tiempo programando, o con algunos de vosotros por aquí, gente que sabe programar de verdad, vamos, pero no puedo evitar sentirme inepto.

Seguiré intentándolo.

2 respuestas
Mandarino

Dia 17

El copypaste de la parte 1
Parte 2

#265 No te desanimes. Tampoco hay que mezclar 2 skills diferentes, lo que necesitas para trabajar de programador en cualquier empresa es muy diferente a las skills necesarias para este tipo de problemas. En el trabajo es mas diseño/organizacion/trabajo en equipo y esto es mas matematicas/algoritmia.
Como mucho sirve para las entrevistas de trabajo para empresas que usan esto para evaluarte, y aún ahi, el 50% de la valoración es tus habilidades comunicativas, además que suelen poner problemas mas faciles (a no ser que vayas a google/facebook/etc..).

Yo el año pasado tardaba horas en hacer los problemas pero me aficioné hace unos meses a hacer problemas (leetcode/codechef) y tengo bastante interiorizado los algoritmos basicos (dfs, bfs, binarysearch, dijsktra, sliding window...) , que son los que en su mayoria se require para hacer AdventOfCode. Por si te sirve de consuelo, habré hecho unos 300 problemas de este estilo este año xD De hecho, mi motivación para empezar fue igual que tu: Me sentia inepto pensando que me estaba haciendo mayor y ya no se me daba tan bien programar como antes. Pero practicando ya noto la fluidez y sube la autoestima

Con más practica podrás detectar mas facilmente los patrones que suele usar la gente en su codigo. Si yo ahora leo un codigo que usa un algoritmo que no he visto en mi vida, pues me pasara como a ti que no entiendo nada. Y aún cuando reconozco que tipo de algoritmo ha usado (dfs, dynamic programming ...) muchas veces no lo entiendo directamente. También ten en cuenta que el codigo que deja la gente para los problemas de AoC son ultra-sucios porque quieren ir a resolverlo rapido sin preocuparse de nada.

1 1 respuesta
draz1c

#265 #266 Me parece un tema muy interesante el que habéis planteado de como de diferente es programar los retos Advent of Code y programar en tu trabajo. Me ha gustado mucho tu respuesta @Mandarino . A lo mejor pregunto algo más en el hilo de desarrolladores/programadores junior para no manchar este porque como digo me interesa saber como es un día típico de trabajo de alguien que es desarrollador de software (programador vaya).

Zentakki

Entiendo lo que dices, y racionalmente comprendo que es perfectamente normal, pero el sentimiento de tener que dejar algo aparcado no por tiempo ni ganas si no por no ser capaz es de bajonazo.

Leyendo tu comentario creo que me va a pasar parecido, el momento bajón creo que luego servirá para motivarme y ponerme a hacer leetcode y pasados advent of code o similar!

1 respuesta
B

#268 Mucha gente que ves que se peta los problemas casi al instante o bien tiene mucha experiencia o bien son gente que llevan desde incluso antes de la universidad haciendo concursos de programación, olimpiadas de matemáticas y similares etc y por tanto esto les parece tirado (porque realmente en comparación con la dificultad potencial de estos problemas los del AoC son bastante fáciles).

Pero vaya, es práctica y aprender. Si te interesa mejorar a este respecto yo te recomiendo que sigas esta guía

https://codeforces.com/blog/entry/98806

El resumen viene a ser

  • Lee teoría por tu cuenta
  • Encuentra un rango de dificultad de problemas tales que seas capaz de resolver la mitad de estos
  • No mires nunca soluciones

Como lo que te interesa a ti es saber hacerlos, y no hacerlos rápido, puedes saltarte la parte de practicar "speed-coding".

No te rayes ni dejes que la autoestima se te hunda, es un campo algo niche.

Flashk

Llevo con fiebre desde ayer. Imposible pensar con claridad así. :(