Kurzer Prozess: Size Contest bei SPOJ

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
hendrikS
User
Beiträge: 420
Registriert: Mittwoch 24. Dezember 2008, 22:44
Wohnort: Leipzig

Montag 23. Februar 2009, 16:42

numerix hat geschrieben: Es bringt einem zumindest Punkte in der SPOJ-Rangliste ...
Genau. Habe jetzt schon 0.5 Punkte by SPOJ und Platz 3816. :)
Benutzeravatar
HerrHagen
User
Beiträge: 430
Registriert: Freitag 6. Juni 2008, 19:07

Dienstag 24. Februar 2009, 01:22

Bei der Gelegenheit will ich noch mal auf https://www.spoj.pl/problems/SIZECON/ hinweisen. Der Wettbewerb ist wirklich klasse! Ich hab mich jetzt ein paar Stunden dran probiert und muss sagen, dass das mit Abstand der beste Code-Golf ist den ich je gesehen hab. Das Problem ist viiieelll vertrackter als man zunächst denkt...

MFG HerrHagen
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Dienstag 24. Februar 2009, 02:00

Fass es nich wie's einer in 29 Zeichen schafft oO' Ich schaffs nichmal in 29 Zeichen das Zeug einzulesen in einer Datenstruktur...
DasIch
User
Beiträge: 2473
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Dienstag 24. Februar 2009, 02:32

@BlackVivi Wofür braucht man da eine Datenstruktur?

Ich komme jetzt auf 59 dass ist immer noch 30 Zeichen mehr als die beste Lösung :/

btw. Wieso sind negative Zahlen eigentlich True?
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Dienstag 24. Februar 2009, 04:53

DasIch hat geschrieben:@BlackVivi Wofür braucht man da eine Datenstruktur?

Ich komme jetzt auf 59 dass ist immer noch 30 Zeichen mehr als die beste Lösung :/

btw. Wieso sind negative Zahlen eigentlich True?
Weil absolut alles außer 0, None und einer leeren Liste True ist. (vorrausgesetzt es ist nichts eigenes implementiert)

59 Zeichen ist auch mein bestes. Man braucht nicht zwangsweise eine Datenstruktur, aber ohne wirds doch viel zu lang. Ich denke mit dynamischer Codeerstellung (exec und so) wird's kürzer. Aber im Moment fehlt mir noch ein kurzer Gedanke, negative Zahlen zu überspringen.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Dienstag 24. Februar 2009, 06:53

HerrHagen hat geschrieben:Bei der Gelegenheit will ich noch mal auf https://www.spoj.pl/problems/SIZECON/ hinweisen.
Auf die 34 Bytes kannst du wir wahrhaftig was einbilden!

Es gibt einen langen Thread im SPOJ-Forum, in dem Tim Peters und ein paar andere ihr Ringen um die beste Lösung darstellen und es mit viel Arbeit auf 37 Bytes geschafft haben. Ich habe mich in den letzten Tagen so nach und nach auf 43 Bytes vorgearbeitet und bin schon ganz glücklich darüber, dass ich es wenigstens bis auf die erste Seite im Python-Ranking geschafft habe. Aber wenn du jetzt einige andere hier im Forum noch infizierst, dann ist's damit wohl auch bald vorbei ... :cry:
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 24. Februar 2009, 10:39

DasIch hat geschrieben:btw. Wieso sind negative Zahlen eigentlich True?
Zum Beispiel damit nicht einige auf die Idee kommen -1 als Fehler-Rückgabewert zu verwenden, da das ja False wäre und man es prüfen könnte. Stattdessen besser Exceptions.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
HerrHagen
User
Beiträge: 430
Registriert: Freitag 6. Juni 2008, 19:07

Dienstag 24. Februar 2009, 20:18

Ahh..., mindestens 7 Personen aus diesen Forum beteiligen sich schon mal am Rätseln. Sehr schön...
Wer verbirgt sich hinter bords0?
Aber wenn du jetzt einige andere hier im Forum noch infizierst, dann ist's damit wohl auch bald vorbei ... Crying or Very sad
@numerix: Du hast ja noch genug Wettbewerbe in denen du auf Platz eins bist :wink:. (Hab leider im Moment wenig zeit, sonst würd ich mich ja mal an PRIME ranmachen :lol:).

MFG HerrHagen
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

Dienstag 24. Februar 2009, 20:36

HerrHagen hat geschrieben:Ahh..., mindestens 7 Personen aus diesen Forum beteiligen sich schon mal am Rätseln. Sehr schön...
Wer verbirgt sich hinter bords0?
Ich würde mal stark annehmen, bords0 verbirgt sich dahinter ;) Ist auch ein User aus dem Forum, hat sogar schon in diesem Thread geschrieben, afaik.
Ich bin auch dabei, komm aber nicht unter 51 Byte mit einem print sum(generator(bla
  • bla) :(
    Ich find's schon blöd, dass niemand seinen Code veröffentlichen will bzw kann (was verständlich ist), weil ich dann nie die ganzen Tricks kennenlernen werde ;) Aber gut, mit 51 Byte kann ich mich eigentlich auch zufrieden geben, ich find die Lösung jedenfalls kurz :p
Benutzeravatar
HerrHagen
User
Beiträge: 430
Registriert: Freitag 6. Juni 2008, 19:07

Dienstag 24. Februar 2009, 21:43

Ich würde mal stark annehmen, bords0 verbirgt sich dahinter
:oops: stimmt. ich hab n gedächtnis wie ein goldfisch... :oops:
Aber gut, mit 51 Byte kann ich mich eigentlich auch zufrieden geben, ich find die Lösung jedenfalls kurz :p
Nicht so schnell aufgeben!
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

Dienstag 24. Februar 2009, 21:49

HerrHagen hat geschrieben:Nicht so schnell aufgeben!
Ein Goldfisch als Personal Coach? :)
Ich geb ja gar nicht mal so schnell auf, aber wenn ich nicht weiterkomme, dann war's das halt :p Vielleicht sollte ich mir mal ein paar Seiten im Internet durchlesen, die Generator Expressions und List Comprehensions als Thema haben, eventuell find ich da irgendwelche Ideen.
Benutzeravatar
HerrHagen
User
Beiträge: 430
Registriert: Freitag 6. Juni 2008, 19:07

Dienstag 24. Februar 2009, 21:52

Vielleicht sollte ich mir mal ein paar Seiten im Internet durchlesen, die Generator Expressions und List Comprehensions als Thema haben, eventuell find ich da irgendwelche Ideen.
Soviel kann man ja verraten: Die Lösung geht in eine andere Richtung. :wink:
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

Dienstag 24. Februar 2009, 22:14

Hm, hab ich mir fast schon gedacht =) Aber in anderen Richtungen fällt mir ja noch weniger ein! :p
BlackJack

Dienstag 24. Februar 2009, 22:36

@Nocta: Nochmal die Aufgabe durchlesen, insbesondere die "komischen" Rahmenbedingungen.

Ich hab's noch nicht ausprobiert, aber ich denke ich könnte auf ca. 40 Bytes kommen, und wenn numerix wieder mal so ähnlich denkt wie ich, wüsste ich wahrscheinlich wo er noch drei Bytes "einsparen" kann. :-)
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

Dienstag 24. Februar 2009, 23:06

@BlackJack: Naja okay, aber ich weiß nicht, wie man das in Python einsetzen könnte. In Perl kann man's anscheinend so übertreiben, dass dann nur 6 Byte gezählt werden.
Ich bin wahrscheinlich einfach zu unkreativ oder ich kenne irgendwas an Python nicht, was man hier braucht oder es ist so abwegig (aber ihr kommt ja alle irgendwie drauf), dass kein normaler Mensch (ist das jetzt beleidigend? :p) drauf kommt. Oder aber es ist so einfach, dass jeder normale Mensch drauf kommt und ich mich ergo nicht zu solchen zählen kann. Wie auch immer, ich lass es einfach, es sei denn, mir fällt irgendwann mal zufällig mal ein genialer Trick (der euch nach 10 Sekunden einfällt) ein.
Vielleicht will mir ja jemand seinen Code per PN schicken, ich würde ihn dann selbstverständlich auch für mich behalten. Der Trick wie man auf <40 bytes kommt, würde mich jedenfalls interessieren.
Antworten