jvanvugt / kerstpuzzel2017

0 stars 0 forks source link

Vraag 5 #5

Open jvanvugt opened 6 years ago

jvanvugt commented 6 years ago

https://github.com/jvanvugt/kerstpuzzel2017/blob/master/vraag05/poging.py Scriptje geschreven om alle mogelijke lettercombinaties te zoeken, werkt op het voorbeeld. Op de echte vraag helaas niet, omdat we daar alleen de laatste 6 getallen hebben. Ff uitzoeken hoe dat opgelost kan worden.

basvb commented 6 years ago

Voor alle woorden in het woordenboek de waarde uitrekenen en kijken welke matchen, dat lijkt me redelijk te doen qua complexiteit.

basvb commented 6 years ago

en de woorden moeten samen waarschijnlijk al deze letters gebruiken, dus woorden die een letter hebben buiten de set kun je skippen

basvb commented 6 years ago

met de letters kan ook, voor alle sets (max 10 lang ofzo) van letters (pakken met terugleggen) de som uitrekenen en kijken wat matched, maar dat lijkt me vrij complex 10^10 opties ipv 50.000 woorden. Waarschijnlijk net wat handig als je de lengte van de woord(anagrammen) vanaf klein aan begint. dus eerst lengte 2 dan lengte 3 etc.

basvb commented 6 years ago

de, het, en en een lijken er niet in te zitten in ieder geval

jvanvugt commented 6 years ago

Woord 4 zou "tassen" kunnen zijn. Ben ook begonnen aan een woordenlijst approach, maar daar zit nog een bug in.

basvb commented 6 years ago

heb er eentje, maar geen lijst ;) Zie mijn notebook

jvanvugt commented 6 years ago

OpenTaal-210G-basis-gekeurd.txt

jvanvugt commented 6 years ago

Dat zijn 164313 woorden

basvb commented 6 years ago

allo 994738 hut 1999091 nu 1394922 tassen 1937474

basvb commented 6 years ago

Dat is wel wat weinig

basvb commented 6 years ago

994738 kan dan ook Lola zijn bijvoorbeeld. Misschien toch de letter approach nodig voor eigennamen.

basvb commented 6 years ago

Je d stond met het verkeerde getal in de dictionary: dan 1377231

basvb commented 6 years ago

Denk dat we er iets meer termen doorheen moeten stampen, zelfs dna zit er dus bijvoorbeeld niet in.

basvb commented 6 years ago

from itertools import product for rep in range(1,10): keywords = [''.join(i) for i in product(legal_letters, repeat = rep)] for k in keywords: legal_word(k)

explodeert een beetje. Misschien is het Engels, er lijken echter geen woorden van minder dan 6 letters in te zitten anders dan variaties op het genoemde (hi kan ook nog). Dat is toch vrij lastig met de hand lijkt me dan.

basvb commented 6 years ago

Misschien een schrijver/dichter die gek (of oud) Nederlands gebruikt?

basvb commented 6 years ago

Geen van de letters eindigt op een even nummer, dat betekend dat je voor alle woorden weet of ze even of oneven qua aantal letters zijn.