advent-of-code-2020
AoC 2020 etkinliğinde yazdığım kodları burada paylaşıyorum. Her gün için açılan klasörlerin içerisinde sorunları bulabilirsiniz. Bu sene kodlarımı PHP, Javascript ve Typescript(ikisini ayrı yazdığım için bana küfürler etmeyin..) ile yazmaya karar verdim. En iyi yollar benim yazdığım kodlar olmasa bile en kötüleri olmadıklarını düşünüyorum.
https://github.com/lilAmper/advent-of-code-2020
Konuya her günün raporunu anlatımlı bir şekilde ayrı bir post ile göndereceğim. Şimdilik ilk üç günü tamamladım.
ne yaptığını anlamadım ama postları bekliyorum ona göre söylerim ama amper kaliteli iş yapar
Alıntı yapılan: Oner - 04 Aralık 2020, 04:51:45ne yaptığını anlamadım ama postları bekliyorum ona göre söylerim ama amper kaliteli iş yapar
Doğru diyorsun bilgi vermeyi unutmuşum. Advent of Code istediğiniz herhangi bir programlama dilinde çözülmesi gereken çeşitli sorunları size sunar ve siz elinizdeki kodlama diliyle bu sorunları algoritma bilginiz ile çözersiniz. Yanlış hatırlamıyorsam her sene 1 Aralık'da başlar 25 Aralık'da biterdi.
Projeyi inceledim. Gerçekten güzel düşünülmüş. Başarılı bir konsept. Eğer ilk üç gün böyle ise, diğer günler daha da iyi olur.
(https://cdn.discordapp.com/attachments/586884246942253066/784324569305448488/Screenshot_1.png)
Gün 4'ü de bitirdim ve birinci partın kodlarını paylaştım(https://github.com/lilAmper/advent-of-code-2020/blob/main/day4/part1.js). İkinci parttaki kodlarım sonuç kısmına ulaştırsa bile kesinlikle en berbat kodlar olabilirler(birinci partın başına ilk bitirdiğim halini koydum ikinci partı siz düşünün). Sabaha doğru 6'da 4. gün problemi açıldığı için normal olarak biraz sapıta sapıta kod yazdım hatta daha doğrusu yazdık diyebilirim çünkü Reddit üzerinden gördüğüm kadarıyla düzgün kod yazabilen kimse olmamış.
Gün 4'de bulunan problem: bazı pasaportların eksik fieldsları var ve bunun tespitini yapmak fazlasıyla zor. 'ecl', 'pid', 'eyr', 'hcl', 'byr', 'iyr', 'hgt' fieldslarını barındıran tüm pasaportlar geçerli olarak geçiş yapar ve bu sayede sorun çözülür. Yukarıdaki linki bulamadıysanız diye aşağıya 4. gün 1. part kaynak kodlarını bırakıyorum.
Bu problemi çözmek bana ne kattı? İlk defa every(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every) kullandım ve nasıl kullanacağımı öğrendim.
Kaynak Kodları: https://github.com/lilAmper/advent-of-code-2020/blob/main/day4/part1.js
Biraz kafa karıştırıcı göründü. :D Kolay gelsin.
(https://cdn.discordapp.com/attachments/586884246942253066/784811854258110504/Screenshot_1.png)
Çok sıkıcı bir gündü kaynak kodlarını aşağıya bırakıyorum. Çok kısa bir sorun kolayca anlarsınız diye düşünüyorum.
Kaynak Kodları: https://github.com/lilAmper/advent-of-code-2020/blob/main/day5/part1.js
(https://media.discordapp.net/attachments/586884246942253066/785541460350205952/Screenshot_1.png)
Gün 7'ye geldik ve bu günü typescript kullanarak tamamladım. Sorunumuz birçok çanta bilgisi içerisinden "shiny gold" içeren bilgiyi bulmaktı. Satır satır içerikler verildi ve bir satırda birden çok bilgi bulunuyordu. Content kısmlarını ayırıp ardından döngü oluşturacak bir fonksiyon yazdım ve kolayca bu günün ilk partını tamamladım.
Kaynak Kodları: https://github.com/lilAmper/advent-of-code-2020/tree/main/day7