
["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

BTW. już wypracowałem progress bar na każdym dodanym słowie co pozowli mi estymować koniec kroku w trakcie + na koniec będę miał meta informacje ile odrzucono w pierwszym, drugim, trzecim wierszu. To jest spoko informacja.

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

Tak w sumie to to męczę się z tym ale właśnie tak jak piszesz to jest spoko temat na kminienie, bo jakiś trik przyśpiesza kompilacje.
W sumie lubię takie problemy rozwiązywać.

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

@sens:
Dobrze mówisz. Jest coś takiego nawet jak w 1 słowie wstawię tylko słowa na literę a to potem ANEKS będzie weryfikował słowa zaczynające się na N, E, K, S pionowo.
I masz rację, że można coś odrzucić.
Obecnie jak będzie słowo WĘDZI to Ę odrzuca i weryfikuje dla każdego ĘA ĘB ĘC a mogło by być mądre i już Ę wykryć, że są tylko 2 walid początki. ĘA sprawdzam tylko raz, ale sprawdzam Ę* dla wszystkich liter w polskim alfabecie pewnie niepotrzebnie.
Technicznie można zrobić cache dla 1-2 literowych słów przed i odrzucić ĘA ĘB ĘC etc zanim dołoży się drugie słowo.

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

BTW. Koleś tam rzuca chyba gdzieś, że w angielskim sprawdza 200k słów. Ja w angielskim słowniku diffle mam 367k słów. W Polskim 3230k. I wynik wyżej to ograniczenie do chyba top 10% - 20% najpopularniejszych. XD

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

a nie lepiej liniowo wstawiać?
No masz rację, dobra optymalizacja i potem obrócić jakbym chciał bokiem. Też odrzucania obróconych nie pisałem, bo dopiero to stawiam. (chociaż pewnie tego nie będę robił, bo chcę mieć tablice do nowej gierki ;D i w niej orientacja ma znaczenie).
Tu jest gra 5x5 po angielsku:
https://squareword.org/
Ale bardzo źle komunikuje wpisane słowa, u mnie ta logika będzie odrobinę inna ale też dopieszczone będzie że w trakcie wpisywania pokaże, że czegoś brakuje albo jakaś litera nie pasuje.

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

@sens:
Kolego tłumaczy algorytm i pułapki które rozwiązuje, a w linku jest jego repo w C++.
Połowa filmu to kompilacja różnych kwadratów.

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

@sens: w ogóle przynam, że trochę się jebie z optymalizacją. xD
Tu koleś super opisał spoko algorytm:
https://www.youtube.com/watch?v=zWIsnrxL-Zc
Ja w sumie przepisywałem na mój ulubiony JS i zrobiłem to samo + klocki z cachem.
- Ustalam, że ma być 5 wierszy i 6 kolumn
- Dziele słowa na 5 literowe i 6 literowe
- Wstawiam w 1 wiersz wszystkie możliwe 6 literowe słowa (załóżmy 10 000 słów)
- Wstawiam w 2 wiersz wszystkie możliwe 6 literowe słowa (10k * 10k = 100 000 000 kombinacji)
- Sprawdzam po kolei słowa w kolumnach i jak trafię na 2 literowy początek który nie ma 5 literowego słowa (5, bo tyle wierszy) odrzucam
- Sporo 2 literowych przechodzi, dodaje w 3 wierszu 6 literowe słowo (10k * 10k * 10k to maks ale robi się zabójczo)
- Sprawdzając 3 literowe wiele już ginie, do sprawdzenia w 4 i 5 jest już mało (nadal sprawdzanie to wstawianie do pozostałych tablic tych 10k słów)
Koleś tam waliduje wstawiając litera po literze u mnie w sumie też to jest wstawiam słowo ale patrze kolumnami i jak odkryję, że początku gk
niema to w cachu już jest m qk: false
i kolejna z tych 10k*10k kombinacji tylko bierze boolean.
Muszę jeszcze to zoptymalizować i jakoś to wiercić mniejszymi paczkami, bo algorytm niby powinien działać, ale w pewnym momencie brakuje RAMu. :D

["s", "e", "k", "s"],
["e", "t", "a", "t"],
["n", "a", "r", "a"],
["s", "p", "a", "ł"]
Słowa poziomo i pionowo mają @sens ;D

Ej @sens Ty jesteś dewiantem, bawisz się w git rebase
? Bo może to ma sens i się nie znam.
Bo to w założeniu ma przechodzić każdy commit i sprawiać, że one działają podczas synchronizacji z mainem czy masterem, ale rękę sobie dam uciąć, że dzbany co się w nie bawią mają wysrane na commity pomiędzy i tylko na końcu się modlą, że działa.
A jak ktoś jest gównoskrupulatny jak wyżej to cały rabase jest robiony w mojej opinii żeby mi pokazać, że ktoś jest dzbanem.
I zostają "ficzery" rabesa:
- jebanie się z ilomaś krokami zamiast jednego synca
- jebanie historii i w gicie, bo zaczyna kłamać i na żywo: jak przyjdziesz do dzbana i zapytasz o konkretny commit to może mieć problem poznać własny kod, bo to nie jest ficzur tego co on pisał w danym commicie tylko mutant powstały w rabase + git history, bo rebase go pierdoli
Ja to mam flow, że co jakiś czas jak mam stabilny ficzur i widzę, że mi main ucieka to robie na feature branczu magiczne git pull origin master
i mi robi synca z mainem 1 commit conflictowy oznaczony w bitbucketach i githubach jako mergowanie maina do mojego brancza.
Komity przed nie mają najaktualniejszego brancza, ale widać kiedy się odłamałem i co developowałem w tamtym stanie.
Nie jestem ekspertem, może ktoś mądry mi wytłumaczy, że warto.

Apropo pogardy dla elektrona to spotify się ładował normalnie na windzie, bo chyba natywna aplikacja (AFAIK jakieś miesznie natywnych z webowymi), a w Tidalu jak chlewie obsranym gównem, 30 sekund po właczeniu kompa odpala się czarne okno, to SPA Tidala pobiera apkę HEHE. Taki syf, że nawet playbacku offline nie ograli, jak się ma słabego neta to piosenkę której słuchamy 300 razy w miesiącu przytnie. Jebane zwierzęta.

@Deykun obiecał rzecz i słowa nie dotrzymał. Miało być w sierpniu, a sierpień już minął... 11 miesięcy temu...