Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

61

14.05.2008, 11:06

Zitat von »"Phil"«

Es darf memset verwendet werden? Ich dachte nur Standard-C++-Kram. Also ohne C-Funktionen, ohne STL, ohne Assembler und ohne compilereigenen Kram...
Nur C++ geht aus den Regeln nicht hervor!

Zitat

- Nur Standard-Libraries sind erlaubt (kein Boost, WinAPI, DirectX o.Ä.).

Und abgesehen davon kann man auch die Funktionen der C Standard Library per <cxxx> in C++ benutzen. Ist das dann C oder C++? xD

62

14.05.2008, 11:06

Nerv? Habe meine Assemblersachen aus rausgenommen, die haben nur memset/memcpy ersetzt. Bringen nicht so viel. Ansonsten ist alles pures C/C++, gar reines C++, wenn man mal von memset und co. absieht, aber die entsprechende for-Schleife bringt auch nur etwa 0.01 Punkte weniger.

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

63

14.05.2008, 11:11

Häh? Assembler ist doch explizit in den Regeln erlaubt ;) NUR bei Contests der Kategorie "Kürze des Codes" machen wir das, naheliegenderweise, unter Ausschluss von ASM.

marfi

Treue Seele

Beiträge: 100

Wohnort: Schwerte

  • Private Nachricht senden

64

14.05.2008, 12:33

Ich bin gerade verwirrt. Einige haben ja meet-in-the-middle implementiert. Wie kann es sein das man damit Punkte macht?

Ich habe gerade mal was versucht, klappt zwar nicht aber die Zeit war erbärmlich.

33 Mio einträge zu sortieren dauert bei mir wahrscheinlich ne Stunde^^

Nach 5 Minuten habe ich abgebrochen.

Oder habe ich ein falsches Verständnis von dem Algo?

Hab sowas noch nie programmiert^^

Atlan123

1x Contest-Sieger!

  • Private Nachricht senden

65

14.05.2008, 14:20

Hmm... hat es mitlerweile einer über 2.9 Punkte gebracht (... natürlich in der release)? Mehr als 2.9 schafft mein Algorithmus beim besten Willen nicht.
Ich weiß momentan auch nicht an welchen stellen ich da noch was rausholen könnte. Habs allerdings noch nicht mit inline assambler probiert - werd ich wohl auch nicht.
"I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone." (Bjarne Stroustrup)

66

14.05.2008, 16:35

Klar ist meet-in-the-middle erbaermlich, und dann auch wieder nicht. Spacegaier hat auch schon mal gefragt, aber wenn ich mehr verrate, dann ist es ... unfair :-). Es gibt aber auch andere Algorithmen, die hier durchaus mit Leichtigkeit ueber 2.0 schaffen. Selbst verwende ich kein meet-in-the-middle, kann aber mal 'ne brauchbare Implementierung nach Wettbewerbsende posten. Es ist btw. auch meine erste Implementation.

@Atlan123: Der Nervenkitzel ist weg, wenn man weiss wo man steht, zumindest wenn es nur noch um wenige Prozent geht. Desweiteren moechte ich unentschlossene nicht entmutigen.

Atlan123

1x Contest-Sieger!

  • Private Nachricht senden

67

14.05.2008, 23:01

Zitat von »"knivil"«

@Atlan123: Der Nervenkitzel ist weg, wenn man weiss wo man steht, zumindest wenn es nur noch um wenige Prozent geht. Desweiteren moechte ich unentschlossene nicht entmutigen.

hmm... das sehe ich etwas anders.

Ich finde einen solchen Wettbewerb schon fast langweilig, wenn man sich nicht an Anderen messen kann. Gerade das macht ja den Reiz aus. Einfach nur einen Algorithmus zu implementieren ist langweilig. Woran soll man seinen Ansatz denn Bewerten? Wenn niemand Auskunft über seine Zwischenergebnisse gibt, kann man schlecht beurteilen ob zB 2 Punkte gut sind.

Gerade für Einsteige ist es IMHO leichter sich zu Orientieren, wenn derjenige weiß wo „vorne“ (ja – im Übertragenen Sinne :P) ist. Zumindest geht mir das immer so.

Ich fände es zB einen guten Ansporn wenn mir einer sagt, das er schon deutlich mehr Punkte hat. Im Moment finde ich es noch schwer abzuschätzen wie man 3 Punkte einzuordnen hat. Mein Algorithmus ist echt schäbig – damit meine ich primitiv. Ich bin mir sicher, dass man deutlich mehr Punkte erreichen kann (und zwar ohne Optimierung per inline Assambler, SSE o.ä.).

Gruß,
Atlan
"I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone." (Bjarne Stroustrup)

68

15.05.2008, 09:39

Schwankt bei mir momentan zwischen 2.1 und 3.1. War auch schon über 3.5 nur irgendwie habe ich vergessen was ich seitdem geändert habe. Ändere immer zuviel auf einmal. ;)

marfi

Treue Seele

Beiträge: 100

Wohnort: Schwerte

  • Private Nachricht senden

69

15.05.2008, 10:34

Jetzt frage ich doch :)

Was kann man mit diesem Algo in der Spieleprogrammierung anfangen?

70

15.05.2008, 10:55

Hauptäschlich wohl im Bereich der KI nützlich. Zum Beispiel wenn es darum geht was alles mit einem bestimmten Budget an Einheiten oder Gebäuden gebaut werden kann. Welche Kombinationen gibt es, welche nutzt das Budget am besten aus, welche bringt den höchsten Wert usw.

Werbeanzeige