Alternative numbers er tall der alle sifrene veksler mellom partall og oddetall. For eksempel: 2703 og 7230 er vekslende tall, men 2730 er ikke «t.

Tall er veldig vekslende når dobbelt så mange er et alternativt tall også, for eksempel er 3816 veldig alternerende, fordi 7632 også er et alternerende tall.

Spørsmålet til deg er: hvor mange 4 sifre er det veldig alternerende tall? (tallet kan ikke begynne med ett eller flere nuller)

Selvfølgelig kan dette problemet løses ved programmering, men det kan også løses matematisk! Lykke til!

NB: Jeg kom ikke opp med dette puslespillet selv, det er en del av den nederlandske matematikkolympiaden, se denne PDF

Kommentarer

  • i dette scenariet er 5000 det maksimale antallet mulige veldig alternerende tall, ikke sant?
  • det vekslende tallet i seg selv må være 4 sifre, men det dobbelte av det vekslende tallet kan være mer enn det.
  • Forutsatt at vi ' holder oss til 4-sifre, viser det seg der ' er bare EN veldig veldig vekslende nummer: 1818, som dobler til 3636, og deretter igjen til 7272. Det kan være mer hvis du tillater dobbelt og dobbelt dobbelt å være fem sifre …
  • Det kan ikke være et firesifret veldig alternerende tall hvis dobbel har 5 sifre . Bevis: Hvert 5-sifret nummer som er to ganger et firesifret nummer starte med en 1, noe som er rart. Og alle multipler av 2 må ende med et jevnt siffer. Siden intet oddetallsnummer som starter oddetall og slutter til og med muligens kan veksle, kan det ikke være noen veldig alternerende tall mellom 5000 og 9999.
  • Bare for å legge til mer pene observasjoner, her ' en komplett liste over veldig veldig vekslende tall under 10000: 3, 9 , 18, 109, 309, 418, 818, 909, 1818. Av disse er bare 9, 109 og 909 veldig veldig veldig vekslende. Jeg ' er ganske sikker på at det ' er umulig å finne en som ' er fem nivåer av veldig vekslende.

Svar

Antallet slike tall er

70

Når du dobler et tall, er et siffer i resultatet selv om og bare hvis sifferet til høyre bar ikke.

Derfor veksles $ 2x $ hvis og bare hvis sifrene på $ x $ er $ LHLH $, hvor $ L \ i \ {0,1,2,3 , 4 \} $ og $ H \ in \ {5,6,7,8,9 \} $.

(Som en sidemerknad innebærer dette at hvis $ x $ er veldig alternerende, $ 2x $ vil fremdeles være et firesifret nummer, slik at $ x < 5000 $ nødvendigvis).

Vi vet at hvis $ x $ veksler når den ser ut som OEOE eller EOEO. For at $ x $ skal være veldig vekslende, må det også være $ LHLH $, så la oss telle antall måter å oppfylle begge disse begrensningene på.

  • OEOE

    : Hvert oddetall må være lavt, noe som betyr at de hver er $ 1 $ eller $ 3 $. Hver til og med må være høy, så er det enten $ 6 $ eller $ 8 $. Det er to valg for hvert siffer for totalt $ 2 \ cdot2 \ cdot2 \ cdot2 = 16 $ muligheter.

  • EOEO : Nå er jevnhetene lave ($ 0,2 $ eller $ 4 $), og oddsen er høy ($ 5,7 $ eller $ 9 $). Det er tre valg for hvert siffer, bortsett fra at det første sifferet ikke kan være null, så det er $ 2 \ cdot3 \ cdot3 \ cdot3 = 54 $ muligheter.

Disse to teller legger til ønsket svar.

Kommentarer

  • Jeg ' jeg mistet litt på forklaringen din .Jeg kommer til LHLH, men etter det, kanskje ' m tett?
  • I følge kommentarene til OP kan dobbel av det vekslende tallet være mer enn fire sifre.
  • @GentlePurpleRain Det betyr ikke noe '. Et femsifret tall må starte med 1, men det siste sifferet må være jevnt, slik at det kan ' ikke veksle.
  • @f ' ' ja, men ingen 5-sifrede tall gjør kuttet uansett
  • @mikeearnest la til en liten bit i svaret ditt. Rull gjerne tilbake hvis du ikke ' ikke liker det

Svar

Answe r er

70

Jeg gjorde en manuell telling. Prøver fortsatt å finne en matematisk løsning.

Kommentarer

  • Jeg ' beklager at ' er ikke svaret. Hvordan kom du til dette svaret?
  • @xander sjekk min siste redigering
  • Jeg ' beklager, fortsatt ikke det riktige svaret
  • Vent, jeg ser hva jeg gjorde galt, hold deg
  • @xander Hva med nå?

Svar

Jævla jeg startet denne brute force før svarene, og jeg fikk

70

VBA

Bedre logikk for denne ruten ville ha vært

if (one mod 2 = three mod 2) and (two mod 2 = four mod 2) then if one mod 2 <> two mod 2 then counter increase 

Svar

Here we go, brute force again!

Svaret er, som påpekt i andre svar:

70

Du kan sjekke JSFiddle for kildekode og full liste over firesifrede veldig alternative tall.

Svar

Riktig svar er:

70


#AnubhavBalodhi, puzzling.stackexchange,26036, 1/2/16 2341 hrs E=["0","2","4","6","8"] O=["1","3","5","7","9"] ans=0 alters=[] def Alt(num): N=str(num) if len(N)<5: #4 digit if (N[0] in E and N[1] in O and N[2] in E and N[3] in O) or (N[0] in O and N[1] in E and N[2] in O and N[3] in E): alters.append(num) else: #5 digit if (N[0] in E and N[1] in O and N[2] in E and N[3] in O and N[4] in E ) or (N[0] in O and N[1] in E and N[2] in O and N[3] in E and N[4] in O): alters.append(num) for num in range(1000,10**5): Alt(num) #print(num) print(len(alters)) for numb in alters: if numb<9999 and numb*2 in alters: #if the number in alternating list is of 4 digits, and its double is also in the list. print(numb) ans+=1 print("ans is %d" %(ans)) 

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *