Getallen met verschillende cijfers
Geplaatst op januari 11, 2021 door adminBeschouw de reeks natuurlijke getallen van 0 tot en met 999. Stel dat we een deelverzameling van deze set zo selecteren dat elk paar getallen daaruit niet meer dan één cijfer op dezelfde posities deelt. Ter verduidelijking:
- Paren zoals 123 en 456 zijn uiteraard toegestaan, aangezien ze geen cijfers gemeen hebben.
- 123 en 321 zijn samen toegestaan omdat, terwijl ze hebben exact dezelfde cijfers, alleen de 2 bevindt zich eigenlijk op dezelfde positie.
- 812 en 212 zouden niet zijn toegestaan omdat ze allebei de “12” delen aan hun einde, wat is twee cijfers.
- 206 en 246 zijn evenzo niet toegestaan; de gedeelde cijfers hoeven niet aaneengesloten te zijn.
- Voorloopnullen zijn van belang, dus 5 en 205 zijn een verboden paar goed. (Beschouw 5 als “005”.)
Onthoud dat dit moet gelden voor elk paar getallen in de subset. Wat is de grootste (zoals in meeste elementen ) mogelijke set die aan deze voorwaarde voldoet? Hoe zit het met de set met de grootste som van elementen?
(Puzzel geïnspireerd door een gesprek met een vriend over het verkeerd typen van ID-nummers. Excuses als dit hier al is gevraagd.)
Antwoord
Voor wat het waard is, Ik heb een nette visualisatie van waarom het antwoord 100 is:
Stel je eerst een eenvoudiger geval voor, waarbij je alle cijfers 0-99 hebt en je kunt “geen twee cijfers een cijfer op dezelfde plaats laten delen; we kunnen als volgt een tabel met getallen tekenen:
Merk op dat elk getal in een rij het eerste cijfer deelt en dat elk getal in een kolom het tweede deelt cijfer. Daarom moet u nummers zo kiezen dat geen twee een rij of kolom delen. Het is vrij duidelijk dat het maximale aantal getallen dat u kunt kiezen 10 is. Hier is een oplossing:
Beschouw nu de casus die in de vraag wordt gesteld. Haal 10 van deze 0..99 tabellen op, behalve dat de tweede tabel 100..199 heeft, de derde 200..299, enzovoort. Leg ze dan achter elkaar neer om een 10x10x10 raster van 0..999 (ik heb een aantal van de cijfers ingevoerd om u een idee te geven):
Merk op dat elk nummer in een “strip” van tien kubussen (rij of kolom) hebben 2 cijfers gemeen. Daarom moet je nummers zo kiezen dat geen enkel nummer een “strook” deelt.
Na even nadenken is het duidelijk dat je alleen om 100 van dergelijke nummers te kiezen.
Antwoord
Om toe te voegen aan PrisonMonkeys “antwoord, elke set met 100 elementen hebben dezelfde som, namelijk 49950. Voor elke plaats in het nummer kan elk cijfer alleen op die plaats voorkomen e maximaal 10 keer, omdat het niet twee keer met dezelfde waarde voor een andere plaats kan verschijnen. Dit betekent dat elk cijfer precies 10 keer op elke plaats moet voorkomen, zodat er in totaal 100 nummers in de set zijn. Daarom kunnen we elke plaats afzonderlijk optellen om 45000 + 4500 + 450 = 49950 te krijgen.
Answer
Ik heb een oplossing met 100 elementen in de set. Genereer elk nummer als volgt:
Voeg voor element $ 0 \ leq n \ leq 99 $
ABC
toe aan de set waarinAB
$ n $ is (met een voorloopnul als $ n < 10 $) enC
isA+B mod 10
. Dus voor $ n = 3 $ isAB
03
enC
0+3 mod 10=3
, wat betekent datABC
is033
.
Er zijn geen getallenparen in deze set die de voorwaarde schenden (voor zover ik weet). En er is geen driecijferig nummer ABC
met een ander AB
-gedeelte, aangezien ik alle 100 mogelijkheden heb behandeld. Wat betekent dat dit de grootst mogelijke set is die aan de voorwaarde voldoet.
Ik heb nog geen oplossing voor de tweede vraag.
AB
57
(A=5
enB=7
), enC
is5+7 mod 10=2
, dusABC
is572
.