Autor |
Beitrag |
Martok
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: So 09.12.12 13:36
Moin!
Ein paar Tage bis zum 24.12. sind's ja noch, aber die Wichtel haben Glück: ein paar von euch haben die richtige Kombination rausbekommen: es ist die 46441!
Warum ist das so?
Gehen wir mal die Tipps durch. "Wenn man ein Problem lösen will, sollte man zuerst das Chaos beseitigen." Okay, wie wird man Chaos los? Indem man Ordnung schafft Also etwas sortieren. Der Tipp ist sogar auf ein paar Arten hilfreich, denn wenn man da Entropie reinbringt (das hat tatsächlich jemand im Feedback gemacht ), kann man nur auf eine Art sortieren. Nach den Zahlen geht ja nicht, denn dann wären die Daten wieder unsortiert
In diese Richtung geht auch der letzte Tipp "In Tabellen kann man nicht nur vertikal, sondern auch horizontal sortieren.".
Wir machen also horizontal etwas, da bietet es sich an, die Ziffern zu vertauschen. Aber welche von den 120 Permutationen ist die richtige? "Ein ehemaliger Mitarbeiter von SafeBase hat sich neulich beim Punschtrinken mit den Wichteln darüber aufgeregt, wie monoton der Job doch war. Immerhin hatte man gute Aufstiegschancen..." - Und siehe da, es gibt genau eine Permutation, in der eine mit dem Datum monoton ansteigende Reihe entsteht! Nämlich dann, wenn man die Spalten 1 und 4 vertauscht (Es ergibt sich also 12345-> 42315)
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| 03.08.2012 57120 27150 07.08.2012 07524 27504 08.08.2012 77523 27573 05.09.2012 72537 32577 13.09.2012 63437 33467 19.09.2012 04231 34201 25.09.2012 14733 34713 09.10.2012 16335 36315 10.11.2012 51645 41655 27.11.2012 23544 43524 |
Das ist doch was
Schauen wir uns mal den letzten "nicht verbauten" Tipp an. "Wie jeder gute Geschäftsmann verlässt der Weihnachtsmann nie das Haus ohne Kalender und Taschenrechner." Welche Eigenschaft haben Tage, die das Jahr über aufsteigen? Richtig, die (in vielen Business-Kalendern auffindbare) Nummer im Jahr, bekannt als DATEUTILS.DAYOFTHEYEAR.
Wenn man sich jetzt die Zahlen anguckt und nochmal über den Firmennamen (Safe Base) nachdenkt, fällt auf, dass es keine Ziffern über 7 gibt. Das bedeutet dann wohl, dass wir uns im Oktalsystem bewegen - eine Umrechnung, die praktisch alle besseren Taschenrechner (sogar Pi ) können. Rechnen wir also mal alle Zahlen um.
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| 03.08.2012 57120 27150 11880 07.08.2012 07524 27504 12100 08.08.2012 77523 27573 12155 05.09.2012 72537 32577 13695 13.09.2012 63437 33467 14135 19.09.2012 04231 34201 14465 25.09.2012 14733 34713 14795 09.10.2012 16335 36315 15565 10.11.2012 51645 41655 17325 27.11.2012 23544 43524 18260 |
Direkt aufeinanderfolgende unterscheiden sich um 55. Das ist also der Faktor, so dass wir feststellen:
Delphi-Quelltext 1:
| Passwort:= Vertauschen(IntToOct(DayOfTheYear(Datum) * 55)) |
Und das am 359. Tag des Jahres ausgewertet ergibt 46441.
Das ganze ist sogar mehr oder weniger ohne eigenes Programm lösbar - das einzige, wozu man eventuell ein Programm braucht, ist das Herausfinden der korrekten Vertauschung - aber selbst die kann man relativ schnell manuell finden, wenn man z.B. in Calc die Ziffern in einzelne Zellen verteilt und die Spalten verteilt, da jede Spalte ein paar Stellen hat, die bei der falschen Sortierung nicht stimmen.
War mal ein etwas steilerer Einstieg, aber eigentlich doch machbar, oder?
Grüße,
Martok
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Zuletzt bearbeitet von Martok am So 30.12.12 00:02, insgesamt 1-mal bearbeitet
Für diesen Beitrag haben gedankt: Christian S., Marc., Mathematiker, Narses
|
|
Flamefire
Beiträge: 1207
Erhaltene Danke: 31
Win 10
Delphi 2009 Pro, C++ (Visual Studio)
|
Verfasst: So 09.12.12 13:47
Oktalsystem hatte ich gefunden. Zumindest "schwer" vermutet. Die letzte Ziffer war dann auch noch Tag*(-1)+d mod 8.
Nur der Rest lies sich nicht wirklich anordnen. Eine monoton steigende Folge zu finden führte bei mir zu keinem eindeutigen ergebnis...
Wie nimmt man dort entropie mit rein?
War doch recht hart im Vergleich zu den Vorjahren...
|
|
Mathematiker
Beiträge: 2622
Erhaltene Danke: 1447
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: So 09.12.12 13:50
Hallo,
Gratulation an Alle, die diese Lösung gefunden haben und Danke für das schöne Rätsel!
Ich war zu blöd. Oktalsystem, Sortieren und Tageszahl hatte ich. Aber auf die Idee, dass so zu kombinieren, wäre ich wahrscheinlich nicht in 100 Jahren gekommen.
Meine falsche "Lösung" ergab sich aus einem diophantischen Gleichungssystem 10.Grades, bei dem ich auch noch tricksen musste. Es war einen Versuch wert.
Martok hat folgendes geschrieben : | War mal ein etwas steilerer Einstieg, aber eigentlich doch machbar, oder? |
Steiler Einstieg? Wie sehen denn dann sehr steile Einstiege aus?
Und das "Schnuffelhäschen" von Rätsel 2 hat es ja wohl auch in sich.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Flamefire
Beiträge: 1207
Erhaltene Danke: 31
Win 10
Delphi 2009 Pro, C++ (Visual Studio)
|
Verfasst: So 09.12.12 13:53
Gleichungssystem hatte ich auch versucht. Unabhängig für die Ziffern: y=floor(x/a)*b+c mod 8. Und dann Bruteforce... Nur ein Ergebnis für die letzte Stelle...
|
|
Marc.
Beiträge: 1876
Erhaltene Danke: 129
Win 8.1, Xubuntu 15.10
|
Verfasst: So 09.12.12 14:12
Mathematiker hat folgendes geschrieben : | Ich war zu blöd. Oktalsystem, Sortieren und Tageszahl hatte ich. |
Dito. Ich hatte allerdings falsch sortiert.
Mathematiker hat folgendes geschrieben : | Und das "Schnuffelhäschen" von Rätsel 2 hat es ja wohl auch in sich. |
Das ging gestern Abend im Vergleich zum 1. Rätsel straight forward.
Beste Grüße
|
|
jfheins
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: So 09.12.12 14:25
Ja, das mit den Oktalzahlen hatte ich auch relativ schnell 'raus.
Aber das mit den zwei Spalten vertauschen, darauf bin ich nicht gekommen. Dass man wohl was sortieren musste war bei den Tipps auch schnell klar. Nur wenn ich jede Zeile einzeln sortiere, dann wüsste ich ja nicht in welcher Reihenfolge die Kombination stehen müsste. Und wenn ich eine Zeile auswähle und dann die anderen ebenso vertausche, dann sind a) die anderen ja immer noch unsortiert und b) welche Zeile nehme ich denn dafür?
Lineare Gleichungssysteme, Huffmann und Primfaktorzerlegung brauchten mich auch nicht weiter...
Nachdem ich also falsch geraten habe, hoffe ich auf mehr Glück bei den anderen Rätseln
Was das Schnuffelhäschen angeht, kann ich mich Marc. anschließen
|
|
Martok
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: So 09.12.12 14:30
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
ub60
Beiträge: 762
Erhaltene Danke: 127
|
Verfasst: So 09.12.12 14:39
Seit 2007 knoble ich am AGS mit, aber so chancenlos wie diesmal, noch dazu bei dem "einfachen" Wochenrätsel, war ich noch nie.
Zu den Tipps:
- SafeBase: hat mich total irritiert. Es gibt eine Base64-Codierung und davon einen SafeBase-Ableger. Das hat mich aber nur verwirrt.
- monoton und steigend: das war klar, aber was damit anfangen?
- Tabellen sortieren: Also ich hab da mal Tage und Monate sortiert, war aber auch nicht sehr sinnvoll ...
DayOfTheYear und Anzahl der Tage seit 1900 hatte ich auch probiert. Auch eine Pleite.
Die Lösung erschließt sich nach dem dritten Durchlesen, aber jetzt mal eine Frage: Wer hat denn solche kranken Ideen?
Wer hier gewonnen hat, hat es sich verdient!
ub60
|
|
Tilman
Beiträge: 1405
Erhaltene Danke: 51
Win 7, Android
Turbo Delphi, Eclipse
|
Verfasst: So 09.12.12 15:21
Wenn ich hier Gleichungssysteme, Entropie und so lese glaube ich ja fast dass bei diesem Rätsel schlichtere Gemüter im Vorteil waren
Zitat: | Direkt aufeinanderfolgende unterscheiden sich um 55. Das ist also der Faktor, so dass wir feststellen:
Passwort:= Vertauschen(IntToOct(DayOfTheYear(Datum) * 55)) | kann man so sehen. Auf den Trichter dass sich jedes Passwort um 55 erhöht bin ich auch gekommen, allerdings erst nach dem ich die Lösung bereits hatte
Meine Lösung datiert vom 1.12. um 4:00 Morgens, abgeschickt habe ich meine Lösung dann aber erst nach dem ich mich ausgeschlafen hatte
Ich habe mir einfach die Daten vom 3., 7. und 8. August angeschaut, und versucht die Stellen fortzuschreiben. Das selbe dann mit den Daten 13.9., 19.9 und 25.9. Dass es sich um Oktale Stellen handelt hatte ich zum Glück schnell geblickt. Ich habe dann in einer Tabelle notiert, wie sich die Stellen verändern: während in normalen Stellenwertsystemen sich ja nur eine Stelle bei jedem Schritt um 1 vergößert, lief es hier anders: zwei Stellen verringern sich um 1, während gleichzeitig eine Stelle um 1 ansteigt. Zwei weitere Stellen ändern sich nicht, und werden nur über die Überträge geändert.
(Ist ja auch klar wenn man sich Oktal die 67er Reihe (55 dezimal) anschaut:
Quelltext 1: 2: 3: 4: 5:
| 00067 00156 00245 00334 00423 | )
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| INC Ünach Üvon 1. -1 3 5 d 2. 4 3 b 3. +1 2 1 c 4. 2 a 5. -1 1 e
abcde 42315 |
Dadurch konnte ich die Stellen sortieren (abcde) und ein Programm schreiben, was mir die Werte ausgab.
Stolz bin ich auf das Programm nicht, aber immerhin hatte ich die Lösung
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71:
| var Form1: TForm1; a,b,c,d,e: Integer; datum: tdatetime; ausgabe: String;
procedure TForm1.FormCreate(Sender: TObject); begin a := 2; b := 7; c := 1; d := 5; e := 0; datum := EncodeDateTime(2012,8,3,10,15,30,10); end;
procedure TForm1.SpeedButton1Click(Sender: TObject); begin dec(e); if e = -1 then begin e := 7; dec(d); end;
dec(d); if d = -1 then begin d := 7; dec(c); end; if d = -2 then begin d := 6; dec(c); end; inc(c); if c = 8 then begin c := 0; inc(b); end;
if b = 8 then begin b := 0; inc(a); end;
datum := incday(datum,1);
write(a); write(b); write(c); write(d); write(e); write(':'); write(d); write(b); write(c); write(a); write(e); write('-'); DateTimeToString(ausgabe,'d.m.yy',datum); writeln(ausgabe);
end; |
_________________ Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
|
|
Flamefire
Beiträge: 1207
Erhaltene Danke: 31
Win 10
Delphi 2009 Pro, C++ (Visual Studio)
|
Verfasst: So 09.12.12 16:52
Hm. Hätte das dann nicht bei meinem LGS auch rauskommen müssen?
Seltsam...
na gut aber gescheitert bin ich dann bei:
5.: 37326
6.: 27425
7.: 07524 1.=???
8.: 77523 3.=???
|
|
Tilman
Beiträge: 1405
Erhaltene Danke: 51
Win 7, Android
Turbo Delphi, Eclipse
|
Verfasst: So 09.12.12 17:10
Klar, an den Stellen konnte/musste man erkennen dass da Überträge drin sind. So ist meine Kladde:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| 03.08.2012 57120 04 3 2 7 05 2 3 6 06 1 4 5 07.08.2012 07524 08.08.2012 77523
13.09.2012 63437 14 53536 15 43635 16 33734 17 24033 18 14132 19.09.2012 04231 20 74230 21 54337 22 44436 23 34535 24 24634 25.09.2012 14733 |
_________________ Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
|
|
Xion
Beiträge: 1952
Erhaltene Danke: 128
Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
|
Verfasst: So 09.12.12 19:04
Ich hab einfach versucht, in allen Spalten ein (unabhängiges) System zu erkennen. Letzte Zeile war z.B. einfach ein Dekrement. Erste Zeile war der Tag (wobei es Mitte alle zwei Monate um eins gesprungen ist). Zweite Zeile hatte was mit der Kalenderwoche zu tun (so irgendwie). Und die vorletzte war der Monat (je zwei Monate selbe Zahl). Nur die Mitte war irgendwie...schwierig.
Übrigens: erste + zweite + dritte + vierte - fünfte Spalte ergibt bei den Beispielen fast immer 5 mod 8 (bis auf 2x6). Dachte das müsste System haben Lag am Ende dann aber doch mit 2 Ziffern daneben
Aufs vertauschen wäre ich NIE gekommen.
_________________ a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
|
|
|