staging.inyokaproject.org

Skripting Contest

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

So. Ich geh jetzt schlafen.
Aber mit map, lambda und List-Comprehensions habe ich mich jetzt angefeundet.
Jetzt noch ein Rätsel:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from math import sqrt
def f (arg):
        return [a**int(sqrt(a**2)) for a in map(lambda x: x*2, xrange(arg)) if sqrt(a*2) < arg**2]

for i in xrange(10):
        print f(i)

Wie kann man die Funktion f verändern, ohne dass das Ergebniss sich ändert? 😉

Apollon

Avatar von Apollon

Anmeldungsdatum:
27. Oktober 2004

Beiträge: 724

Ganz viele Leeranweisungen einbauen?!

mawe

Anmeldungsdatum:
18. November 2004

Beiträge: 172

def f(arg):
    #return [(2*a)**(2*a) for a in range(arg) if (a*2)**.5 < arg**2] 
    #return [(2*a)**(2*a) for a in range(arg) if a < arg] 
    return [(2*a)**(2*a) for a in range(arg)]

for i in xrange(10):
    print f(i)


Oder?

EDIT: Notiz an mich: erst denken, dann posten

Gruß, mawe

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

@Mawe: Jup.
Ich glaube nicht, dass man 2a^2a noch kürzen kann.
Aber mit lambda geht es noch:

g = lambda a: [(2*a)**(2*a) for a in range(arg)]

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

Apollon hat geschrieben:

Ganz viele Leeranweisungen einbauen?!

Wie soll ich das verstehen ❓

//Edit: Jetzt habe ich mir das erste Mal die Ausgabe angesehen. Nicht wirklich eine harmonische Zahlenreihe 😛

bitbieger

Avatar von bitbieger

Anmeldungsdatum:
24. Januar 2005

Beiträge: 85

Schaut euch die Meister von diesem Quatsch an:
http://www.ioccc.org/

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

bitbieger hat geschrieben:

Schaut euch die Meister von diesem Quatsch an:
http://www.ioccc.org/

Nene, unseres ist noch brauchbar.
Das was die machen ist unnötig kompliziert.

Aber das: http://p-nand-q.com/python/lambdaizing_quicksort.html hat auch was 😉

mawe

Anmeldungsdatum:
18. November 2004

Beiträge: 172

Hi!

Die wahren Meister sind für mich die Perl-Golfer 😀

Wie siehts jetzt eigentlich mit unserem Contest aus? Hat jemand Ideen für Aufgaben, und wo/wie läufts ab?

Gruß, mawe

Pharao

Anmeldungsdatum:
23. Dezember 2004

Beiträge: 174

Gute Idee. Bei Ruby und Python müsste man nur festlegen, was Standard ist. (buildin?)

das dürfte das einfachste sein.
Distribution warty
apt-get install foo

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

Pharao hat geschrieben:

>Gute Idee. Bei Ruby und Python müsste man nur festlegen, was Standard ist. (buildin?)
das dürfte das einfachste sein.
Distribution warty
apt-get install foo

foo == python || foo == python2.3 || foo == python 2.4?

Weißt du, was das alles schon mitinstalliert?

Pharao

Anmeldungsdatum:
23. Dezember 2004

Beiträge: 174

ich dachte es so, dass $foo von dem, der den Contest vorschläg definiert wird
bzw. dass die Schiedsrichter entscheiden, was $foo ist.
Auf jedenfall würde ich mich auf Software aus den offiziellen stablequellen
beschränken.

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

Pharao hat geschrieben:

ich dachte es so, dass $foo von dem, der den Contest vorschläg definiert wird
bzw. dass die Schiedsrichter entscheiden, was $foo ist.
Auf jedenfall würde ich mich auf Software aus den offiziellen stablequellen
beschränken.

Das Problem liegt mehr daran, dass Python (Ruby) auf ubuntu und debian wie cheaten ist.
Normalerweise bringt es einige Module mit. Aber das, was da mitkommt ist abartig. 😲

Pharao

Anmeldungsdatum:
23. Dezember 2004

Beiträge: 174

hm... das ist schlecht... (ich sollte mir Python vielleicht mal anschauen....)
dann wird wohl nur ein kompilieren der Sourcen bleiben nach festen Regeln.

blackbird Team-Icon

(Themenstarter)
Avatar von blackbird

Anmeldungsdatum:
19. November 2004

Beiträge: 3397

Oder der Aufgabensteller verbietet bestimmte Module

Apollon

Avatar von Apollon

Anmeldungsdatum:
27. Oktober 2004

Beiträge: 724

Soll das jetzt ein reines Python/Ruby-Contest werden? Wenn ja: Buuhhh!