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

@sens:
Z takich optymalizacji to też myślałem, że można by to puścić gdzieś github akcji i niech chmura liczy. 🧅

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

@sens:
Trochę po robiłem i stwierdziłem, że mogę trochę zwiększyć liczbę słów i... xd
Tu odwrócona po takim samym czasie, a ma jeszcze 2 wiersze do uzupełnienia. ;d
To był input ~110k-120k+ najpopularniejszych słów ogólnie (potem zlimitowany do 6 i 3 znakowych list). Teraz pchnąłe, i 2h zeszło do 25min w 4 kroku.

["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

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

Rozwala mnie, że cda które stoi i stało na pirackich treściach ma własną hehe platformę strimingowo z płatnościami.

właśnie zescrape'owałem wszystkie wpisy niektórych userów strm.pl i próbuję wsadzić wasze osobowości do modeli AI, niedługo nie będziecie już potrzebni

Wiedzieliście, że API wyszukiwarki gov.pl pozwala byle programiście z ulicy na napierdalanie w nie requestami, które zwracają po 10k obiektów (łącznie ~4MB)? XD
https://www.gov.pl/api/data/search?query=a&category=kategoria&page=1&size=10000
No nie wiem, może to jest normalne. Ale kirva szok że ktoś nie zrobił limitu jakiegoś kurw throttle'a czy czegokolwiek

Wiedzieliście, że API wyszukiwarki gov.pl pozwala byle programiście z ulicy na napierdalanie w nie requestami, które zwracają po 10k obiektów (łącznie ~4MB)? XD
https://www.gov.pl/api/data/search?query=a&category=kategoria&page=1&size=10000
No nie wiem, może to jest normalne. Ale kirva szok że ktoś nie zrobił limitu jakiegoś kurw throttle'a czy czegokolwiek

Ale kirva szok że ktoś nie zrobił limitu jakiegoś kurw throttle'a czy czegokolwiek
No niby tak, ale jak to są dane które się nie zmieniają tygodniami / miesiącami i wszystko na GET to pewnie można dobrego cache ograć.