Új hozzászólás Aktív témák
-
DopeBob
addikt
Nálam sajnos beütött a covid... talán most már jövök kifelé belőle. Még meg sem néztem, miről maradtam le, de lehet, hogy jobb is, elég nehezek voltak már a feladatok nekem így a vége felé. Majd megpróbálom valamikor befejezni.
Nagyon tetszettek a feladatok, nagyon jópofák voltak, jövőre mindenképpen jövök már a kezdésre
Gratulálok Nektek, látom sikerült végig megcsinálni mindent
-
DopeBob
addikt
Köszi, tegnap néztem róla YT-n videókat, tényleg egyszerű maga az algoritmus. Lekódolni már nem volt annyira az, de működik.
Sikerült is vele megoldani a tegnapi első részét, majd megcsinálom a másodikat is.Már tudom melyik a lassú része, kell hozzá csinálnom egy listát, hogy ne kelljene mindig végignézni az összes csomópontot, hogy melyik a legkisebb.
Ez a mai viszont...
egyre magasabb szintekre jutok önsanyargatásban, ez már valami 4 óra volt, mire kész lett
de ezeket a típusú feladatokat jobban élvezem, mint pl a tegnapit.Igyekeztem szép kódot írni, nem rövid, de így könnyen olvasható volt nekem. [link]
-
DopeBob
addikt
Hát ez a két útkeresős kifog rajtam.
Annyi segítséget kérnék, hogy ezeket a témaköröket szedtem össze, amik kellhetnek az ehhez hasonló feladatok megoldásához, jó ez a sorrend?
Single linked lists
Stack & Queues
Binary search trees
Tree traversal
Binary heaps
Graphs
Graph traversal
Dijkstra -
DopeBob
addikt
Koszi, egyelore nem kell egyik sem. Redditen is csak a memeket nezem meg. Eddig ezt leszamitva ossze tudtam szenvedni oket, nekem eleg nehezek, joberzrs mikor vegre sikerul. Ha lesz egy szabad oram nekiallok. Elso korben ugy ahogy a tobbinek, megprobalok kitalalni egy mukodo megoldast egyedul, akkor is ha van ra kesz jol bejaratott algo.
Biztos nem szep, de a grafot tudom abrazolni 2d-s tombkent, indexek a csomopontok, es mondjuk egy jeloli, ha ket csomopont kozott van ut.
Talan utana jobban megertem a normalis adatszerkezeteket es algoritmusokat, mar kb ket oldalnyi temakort irtam ossze amit at kellene nezni 😁
-
DopeBob
addikt
Ha lesz egy kis időm megpróbálom valahogy megoldani.
Sajnos hétvégén nem nagyon volt időm, de ma megcsináltam a d13, ez nagyon tetszett és egyszerű is volt, aztán jött a d14... így a halason megedződve, már neki se álltam stringeket gyártani, gondoltam, hogy megint megszívnám a p2-ben.
Elég hamar (
na jó, egy óra) kitaláltam, hogy tudom megoldani, hogy egy objektumban tárolom az párokat és a darabszámokat, egy másikhoz pedig mindig hozzáadom a párok közé aktuálisan beszúrt betűket, aztán 2 órán át néztük egymást hogy miért nem jó...Mikor az aktuális párokból legeneráltattam az új párokat, akkor sima inkrementálást használtam, ahelyett, hogy azt adtam volna hozzá, ahány darab volt belőle.
Lehet kéne tartani egy kis szünetet már. -
DopeBob
addikt
Ah, értem, köszi. Kijavítom akkor úgy, hogy amíg nyitó jelek jönnek, azokat pakolom egy tömb végére, ha záró, akkor megnézem, hogy az van e tömb végén, ha igen, akkor kitörlöm, ha nem akkor megvan a hiba. Így talán logikusabb is lesz, mint ez a törlés és visszalépkedés.
Köszi a sok segítséget
-
DopeBob
addikt
Hát ezt még emésztem

const errorScores = {
')': 3,
']': 57,
'}': 1197,
'>': 25137
}
const autoCompScores = {
'(': 1,
'[': 2,
'{': 3,
'<': 4
}
const pairs = {
')': '(',
']': '[',
'}': '{',
'>': '<'
}
let syntaxtErrorScore = 0;
const autoCompleteScores = [];
sampleData.forEach((line) => {
let i = 0;
let valid = true;
while (i<line.length && valid) {
if (pairs.hasOwnProperty(line[i])) {
if (line[i-1] === pairs[line[i]]) {
line = line.slice(0,i-1) + line.slice(i+1)
i-=2;
} else {
valid = false;
syntaxtErrorScore+=errorScores[line[i]]
}
}
if (i === line.length-1 && !pairs.hasOwnProperty[line[i]]) {
let autoCompleteScore = 0;
for(let i = line.length-1; i>=0;i--) {
autoCompleteScore = autoCompleteScore * 5 + autoCompScores[line[i]];
}
autoCompleteScores.push(autoCompleteScore)
}
i++
}
})A mait így tudtam megcsinálni. Megkeresem az első 'bezáró' jelet, ha előtte a párja van, akkor törlöm őket visszalépek a törlés előtti pozira és megyek tovább, ha nem akkor az a bezárójel az érvénytelen.
Innen a második rész már csak annyi volt, ha nem volt érvénytelen és nyitó jel van a végén, akkor ezt a maradék stringet lepontozom hátulról előre
-
DopeBob
addikt
Hát ennél a mainál eléggé megizzasztott a part1
második rész ahhoz képest már csak 3 perc volt.Ha kérdezgethetek még, a tegnapinak (d9:p2) mi a szép megoldása? Első részből megvannak a minimumpontok koordinátái. Első körben megnézem ennek a pontnak melyik szomszédja ami értékben 1-el nagyobb és nem 9, ezeket elmentem egy tömbben. Utána ezen a tömbön végig megyek, és minden koordinátára megnézem ugyan ezt, az eredmény tömböt ennek a tömbnek a végéhez adom. Itt van bőven ismétlődés. Ha elérek a végére, akkor nem volt már ilyen újabb szomszéd, összeszámolom hány különböző elem volt.
Nekem szerencsére, eddig inkább logikai feladatok voltak, és minimális prog és algo ismerettel lehet őket abszolválni, persze a kódomat nem mutatnám meg szívesen senkinek

-
DopeBob
addikt
Igen.
Kéne ide is spoiler tag
hátha valaki még csinálja.Én úgy indultam el, hogy az eredeti és az összekevert szegmenseket megfeleltetem egymásnak. Pl, (1->7 megvan az 'a' utána 4+'a' szegmens->megvan a 'g' (4 és 9 különbsége), 8 és 9 különbsége, megvan az 'e') stb. és utána erre írtam programot, ami végigmegy így sorban a szabályaimon és megkeresi az összes szegmens helyét.
De azóta eszembe jutott egy egyszerűbb megoldás, pl azok a szegmensek, amik az 1-ben és a 7-ben is megvannak, az 5 szegmenses számok közül csak a 3. ra igaz. Azok amik a 4-ben vannak a 6 szegmensesek közül csak a 9-re igaz, stb.
-
DopeBob
addikt
Szia,
kész a mai, de hiányérzetem van. Van annál jobb megoldás, mint hogy minimumtól maximumig az összes lehetséges pozícióra kiszámolom a fogyasztást és megjegyzem a legkisebbet?
Így a tegnapi után, attól féltem a part2-re majd nem lesz jó ez a favágó módszer, de nem tudom, hogy lehetne máshogy.
-
DopeBob
addikt
{
if (x1 < x2 && y1 < y2) {
for (let i = x1; i<= x2; i++) {
ventMap[y1+(i-x1)][i] += 1;
}
}
else if (x1 > x2 && y1<y2) {
for (let i = x2; i<=x1;i++) {
ventMap[y2-(i-x2)][i] += 1;
}
}
else if (x1 < x2 && y1 > y2) {
for (let i = x1; i<=x2;i++) {
ventMap[y1-(i-x1)][i] += 1;
}
}
else if (x1>x2 && y1>y2) {
for (let i = x2; i<=x1;i++) {
ventMap[y2+(i-x2)][i] += 1;
}
}
}Ez a diagonal rész, lehet, hogy van jobb megoldás, x tengelyen mindig növekvő sorrendben jönnek a koordináták iránytól függetlenül.
Ez javascript nincs rendes 2d array, csak azért vannak felcserélve a koordináták tömbbe írásnál, hogy kirajzolva jó legyen, de igazából mindegy.
-
DopeBob
addikt
Igen, a maira sikerült rájönni, az első pár "out-of-memory" után

Még este "friss" fejjel megnézem újra a tegnapit, hogy mi a bibi vele.
Diagonálnál úgy csináltam, hogy mint a négy variációt lefedtem, és demo adatokkal jól működik, illetve ami a feladat leírásban benne van 10 koordináta az is jó, stimmel a rajz és az eredmény is.
-
DopeBob
addikt
AdventOfCode:
Hát, ez a mai (day6) azért eléggé megizzasztott már
. Sajnos elég korlátozott az "eszköztáram". Viszont örülök, hogy sikerült kitalálnom, hogy lehet megcsinálni a part2-t, nyilván for ciklussal csináltam meg az első részt, aztán jött a pofára esés.Tegnapinak a 2. részét viszont félretettem, a part2 ott nem megy, ha a feladatkiírásokban lévő adatokat használom, ugyan az az eredmény jön ki, ha kirajzoltatom a térképet, az is stimmel, de ha a tényleges adatokkal számolok, nem jó az eredmény és nem jövök rá miért.
Talán az "örökös újrakezdő" a legjobb kifejezés rám, nem fejlesztőként dolgozom (sima it support), és ahogy időm engedi, próbálom ezt megtanulni, de elég nehezen megy, munka, család, gyerek mellett. Kb fősuli óta bennem van a kétely, hogy nem lennék elég jó hozzá, így már ott elengedtem a dolgot, és nem mentem sw fejlesztés szakirányra. Aztán mikor van egy ilyen kis minimális sikerélményem, akkor újra lelkes leszek, egy darabig foglalkozom vele, aztán 1-2 évre megint feledésbe merül a dolog.
Új hozzászólás Aktív témák
- G.SKILL Trident Z RGB 16GB (2x8GB) 3000MHz DDR4 kit / BESZÁMÍTÁS OK!
- Apple iPhone 12 64GB 100% Akku Újszerű,Dobozos,Tartozékaival. 1 Év Garanciával!
- Kingston HyperX Fury 2x4GB 1600MHz DDR3 kit
- Honor 400 Lite 8/256GB Újszerű,Kártyafüggetlen,Tartozékaival. 1 Év Garanciával!
- Samsung Galaxy S24 8/128GB Újszerű,Kártyafüggetlen,Tartozékaival. 1 Év Garanciával!
- Oppo A14 4/64GB Kék / 12 hó jótállás
- AKCIÓ! Dell Latitude 3430 üzleti notebook - i5 1235U 8GB DDR4 512GB SSD Intel Iris Xe WIN11
- Telefon felvásárlás!! Samsung Galaxy A22/Samsung Galaxy A23/Samsung Galaxy A25/Samsung Galaxy A05s
- Xiaomi 13T Pro 512GB, Kártyafüggetlen, 1 Év Garanciával
- Kingston hyperX fury 8GB 2400mhz
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

egyre magasabb szintekre jutok önsanyargatásban, ez már valami 4 óra volt, mire kész lett
de ezeket a típusú feladatokat jobban élvezem, mint pl a tegnapit.
Hogy kapcsolódjon valahogy az Odin Projekthez, csináltam hozzá egy kis UI-t. 

