Seite 5 von 7
Verfasst: Sonntag 22. Februar 2009, 14:00
von Nocta
Hm, stimmt, das Leerzeichen und die Klammern sind eigentlich schon fast zu offensichtlich

Das mit den Wahrheitswerten war mir zwar bewusst, aber auf die Idee, mir das hier zunutze zu machen, bin ich nicht gekommen.
Aber auf 53 kommt man damit immer noch nicht oder?

Da würde mir jetzt echt nichts mehr einfallen aber vielleicht ist das ja auch von Grund auf der falsche Ansatz.
Verfasst: Sonntag 22. Februar 2009, 14:07
von HerrHagen
Geil... Codegolf im dt. Python-Forum und ich sehs erst jetzt...

Verfasst: Sonntag 22. Februar 2009, 14:23
von BlackJack
@Nocta: Also ich bin jetzt mit diesem Ansatz runter auf 59 Bytes. Wo ich da noch 6 Bytes rausquetschen soll, sehe ich nicht.
Also muss es wohl noch einen anderen Ansatz geben.
Verfasst: Sonntag 22. Februar 2009, 14:34
von HerrHagen
@nocta: Ich bin mit deinem Ansatz bei 56. Da geht noch was...
EDIT: Korrigiere: 55
EDIT2: 54, hmm ein Zeichen fählt noch...

Verfasst: Sonntag 22. Februar 2009, 14:59
von hendrikS
HerrHagen hat geschrieben:Geil... Codegolf im dt. Python-Forum und ich sehs erst jetzt...

Ich wollt mal fragen, was daran eigentlich so traurig ist. Ich meine, man lernt in jedem Fall was dazu.
Verfasst: Sonntag 22. Februar 2009, 15:01
von Craven
Mal was andres:
Wie lang würdet ihr denn durchschnittlich an sowas sitzen, ohne Absprache im Forum?
Verfasst: Sonntag 22. Februar 2009, 15:08
von HerrHagen
Ich wollt mal fragen, was daran eigentlich so traurig ist. Ich meine, man lernt in jedem Fall was dazu.
Traurig ist, dass ich es erst jetzt gesehen hab! Ich mag Code-Golf. Wenn ich es nicht mögen würde, hätte ich mich wohl kaum mit 54 Zeichen beteiligt...
Verfasst: Sonntag 22. Februar 2009, 15:37
von Leonidas
Craven hat geschrieben:Wie lang würdet ihr denn durchschnittlich an sowas sitzen, ohne Absprache im Forum?
Die Absprache macht es doch erst spaßig. Hacker-Community-Denken eben
Andererseits, ich beteilige mich gar nicht am Codegolf.. da spiele ich lieber mit anderen, ebenso unnützen Sachen.
Verfasst: Sonntag 22. Februar 2009, 15:37
von BlackJack
Sooo, nun habe ich auch eine 54 Byte-Lösung.
Verfasst: Sonntag 22. Februar 2009, 15:48
von Nocta
Ich hab vielleicht noch nicht lang genug mit Python rumgespielt um intuitiv irgendwelche 10byte kürzere Lösungen zu finden.
Wie kommt ihr mit meinem Ansatz noch weiter runter? Ihr könnt mir ja mal einen Tipp geben wenn ihr nicht bereit seid, eure Lösungen zu veröffentlichen

Irgendwie steh ich auf Wettbewerbe in denen ich schlecht bin

Verfasst: Sonntag 22. Februar 2009, 16:24
von HerrHagen
So, die 53 steht
da...
Ab jetzt wirds schwer...
Mich würde mal der Ansatz von
fxr interessieren. Sein Programm läuft viel länger. Er muss einen anderen Weg gegangen sein.
MFG HerrHagen
Verfasst: Sonntag 22. Februar 2009, 16:31
von numerix
HerrHagen hat geschrieben:So, die 53 steht
da...
Du machst mir Angst ...

Verfasst: Sonntag 22. Februar 2009, 18:15
von Craven
Perl ist schon ein bisschen extrem, oder? Mit 24 Zeichen ...
Verfasst: Sonntag 22. Februar 2009, 18:26
von DasIch
Perl ist ja auch nur ein Synonym für line noise

Verfasst: Montag 23. Februar 2009, 01:35
von hendrikS
BlackJack hat geschrieben:Sooo, nun habe ich auch eine 54 Byte-Lösung.
Ich hab jetzt auch eine. 53.
Verfasst: Montag 23. Februar 2009, 06:19
von numerix
hendrikS hat geschrieben:BlackJack hat geschrieben:Sooo, nun habe ich auch eine 54 Byte-Lösung.
Ich hab jetzt auch eine. 53.
Gratuliere!!!
Ich denke, es wäre allerdings im Sinne von SPOJ, wenn du den Code hier wieder entfernen würdest, weil ansonsten damit zu rechnen ist, dass in nächster Zeit eine Reihe von 53-Byte-Lösungen bei SPOJ eingeschickt werden (die zufällig völlig identisch mit deinem Code sind) und so das Ranking verfälschen.
Ich bin dir natürlich dankbar für den Code, weil er zumindest einen "Trick" enthält, der mir bisher nicht eingefallen ist und vielleicht ja auch für andere Aufgabenstellungen mal einsetzbar ist.
Jetzt muss ich mal sehen, wie ich damit umgehe, dass ich nun keine eigene bessere Lösung mehr entwickeln kann (mein derzeitiger Stand waren 59 Bytes), ohne von deinem Code zu profitieren ...
@HerrHagen: Was die 53 Bytes von fxr angeht, so vermute ich, dass er mit "re" gearbeitet hat. Der etwas erhöhte Speicherbedarf spricht für einen import, die Geschwindigkeit deutet auf "re" hin ...

Verfasst: Montag 23. Februar 2009, 06:29
von numerix
numerix hat geschrieben:Jetzt muss ich mal sehen, wie ich damit umgehe, dass ich nun keine eigene bessere Lösung mehr entwickeln kann (mein derzeitiger Stand waren 59 Bytes), ohne von deinem Code zu profitieren ...
Ich denke, ich habe einen Weg gefunden; die eine Sache, die deinen Code von meinem unterschied, war mir gestern abend auch noch eingefallen, aber die Idee, die den Code so richtig kurz macht, wäre mir im Leben nicht eingefallen. Damit loche ich mit 58 Bytes ein ...
Verfasst: Montag 23. Februar 2009, 11:51
von HerrHagen
@hendrikS: bitte Code entfernen, sonst ist es ja kein Rätsel mehr!
@numerix: Meine Lösung ist die selbe wie bei hendirkS.
Mittlerweile glaub ich das fxr auch keine andere Lösung hat. Schau dir das Einsendedatum der Lösungen mit 0.1x sek. Laufzeit an. Die sind alle von 2006 oder älter. Vielleicht haben die bei SPOJ ja da ihr Computersystem verändert, aber die Programme nicht neu laufen lassen?
Ich glaube nicht daran, dass es noch eine andere Variante gibt die ebenfalls so kurz (oder kürzer) ist. Solange man re bei Python importieren muss, wird eine solche Lösung kaum kürzer sein. (Eine Idee wäre noch alle TDLF durch 2* zu ersetzen und das auszuführen, so dass print 2*2*2 dasteht).
MFG HerrHagen
Verfasst: Montag 23. Februar 2009, 11:59
von hendrikS
hendrikS hat geschrieben:BlackJack hat geschrieben:Sooo, nun habe ich auch eine 54 Byte-Lösung.
Ich hab jetzt auch eine. 53.
Code: Alles auswählen
# Edit: code auf Wunsch von numerix und HerrHagen entfernt
Verfasst: Montag 23. Februar 2009, 12:15
von Blade Runner
So, der erste Beitrag.
Als Gast hab ich schon öfter hereingeschaut, allerdings hab ich leider erst gestern diesen Thread gefunden.
Ich hab mich schon an Aufgaben bei SPOJ versucht, aber ich glaube, dass es viel mehr Spaß macht, sie hier zu diskutieren; vor allem, da man mehr lernt, denke ich.
Jedenfalls würde ich da gerne dran teilnehmen, sobald ihr eine neue Aufgabe anfangt.
Gruß, BR