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

S.Seegel

2x Contest-Sieger

  • Private Nachricht senden

21

22.02.2008, 23:22

@grek40: Danke dir, für den 26-Schritte-Weg ! Hat mir indirekt geholfen, meinen Fehler zu finden. Jetzt findet mein Algo auch den 26-Schritte-Pfad, wenn auch nicht ganz so fix wie deiner ;)

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

22

23.02.2008, 04:25

Mist, wieder Konkurrenz gezüchtet :( :o

p0llux

Treue Seele

Beiträge: 101

Wohnort: Aachen

Beruf: HiWi (theo. Inf.)

  • Private Nachricht senden

23

23.02.2008, 15:16

Zitat von »"David Scherfgen"«

@Alle:
Hat jemand eine Idee, wie man herausfinden könnte, wie teuer bei N Bahnhöfen die teuerste Strecke ist, die es gibt? Also wie hoch kann das korrekte Ergebnis maximal sein?


Klar, das Problem nennt sich Longest-Path und ist NP-schwer ;) Warshall et al funktionieren nur für den kürzesten Pfad, was lustigerweise ein wesentlich einfacheres Problem darstellt.

Man stelle die Situation als Transitionssystem da und benutzt dann z.B. derandomisiertes Color-Coding. Aber das ist mit 'nem Todesstern auf Spatzen geschossen.

p0llux

Treue Seele

Beiträge: 101

Wohnort: Aachen

Beruf: HiWi (theo. Inf.)

  • Private Nachricht senden

24

23.02.2008, 15:46

Spontan mal eine Frage zu den Test-Cases:

Zitat


test_cases.push_back(TestCase(0, 1, 2, 1));


Das bedeutet folgendes: Verfügbare Stationen sind 0 und 1. Und ich benötige angeblich einen Schritt um von 0 zu 1 zu gelangen. Das ist aber Quirx, oder? In dem Falle ist das richtige Ergebnis doch wohl eher "geht garnich"

Anonymous

unregistriert

25

23.02.2008, 15:53

Zitat von »"p0llux"«

Spontan mal eine Frage zu den Test-Cases:

Zitat


test_cases.push_back(TestCase(0, 1, 2, 1));


Das bedeutet folgendes: Verfügbare Stationen sind 0 und 1. Und ich benötige angeblich einen Schritt um von 0 zu 1 zu gelangen. Das ist aber Quirx, oder? In dem Falle ist das richtige Ergebnis doch wohl eher "geht garnich"
Nein. f'`8k

[ ] Autocogito


Gruß, TGGC (making great games since 1992)

p0llux

Treue Seele

Beiträge: 101

Wohnort: Aachen

Beruf: HiWi (theo. Inf.)

  • Private Nachricht senden

26

23.02.2008, 15:57

Zitat von »"TGGC"«

Zitat von »"p0llux"«

Spontan mal eine Frage zu den Test-Cases:

Zitat


test_cases.push_back(TestCase(0, 1, 2, 1));


Das bedeutet folgendes: Verfügbare Stationen sind 0 und 1. Und ich benötige angeblich einen Schritt um von 0 zu 1 zu gelangen. Das ist aber Quirx, oder? In dem Falle ist das richtige Ergebnis doch wohl eher "geht garnich"
Nein. f'`8k

[ ] Autocogito


Gruß, TGGC (making great games since 1992)


Wow, dass war ja mal aussagekräftig. Falls du meinst "nein, das geht so nicht" brauchen wir korrekte Testcases. Falls du meinst: "Nein, du irrst dich. Das geht wohl" muss mir mal jemand erklären wie.

Von 0 zu 1 ohne zusätzliche Bahnhöfe:

Quellcode

1
2
3
0*13=0.
0+7=7, aber den Bahnhof gibts nicht.
0-11=-11, aber den Bahnhof gibts auf Wurstolon ebenfalls nicht.


Bei den letzten beiden Fällen gibt es keine Bahnhöfe, die man anfahren kann. Was ist hier los?!

S.Seegel

2x Contest-Sieger

  • Private Nachricht senden

27

23.02.2008, 16:00

Es geht doch, sowohl das "+7 Ticket" als auch das "-11 Ticket" zum Preis von je einer Schokomünze bringen dich von Bahnhof 0 nach Bahnhof 1.

Du hast anscheinend folgenden Absatz der Aufgabenstellung übersehen:

Zitat von »"David Scherfgen"«

Würde man durch seine Fahrt zu einem Bahnhof mit einer negativen Nummer gelangen, so wird hinten wieder angefangen. Das Umgekehrte gilt für Bahnhöfe mit zu großer Nummer. Fährt man bei 100 Bahnhöfen also beispielsweise vom Bahnhof Nummer 5 zum Bahnhof Nummer 5 - 11 = -6, dann kommt man beim Bahnhof Nummer 94 an. Fährt man vom Bahnhof Nummer 8 zum Bahnhof Nummer 8 * 13 = 104, dann kommt man beim Bahnhof Nummer 4 an. Mathematisch gesprochen wird im Restklassenring modulo N gerechnet.


Die Rechnungen dazu sehen also wie folgt aus:

Quellcode

1
2
(0 + 7) modulo 2 = 1
(0 - 11) modulo 2 = -1 = 2 - 1 = 1

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

28

23.02.2008, 16:00

Re: #04: "Reisekosten", Geschwindigkeit, 16.03.200

Zitat von »"David Scherfgen"«


Würde man durch seine Fahrt zu einem Bahnhof mit einer negativen Nummer gelangen, so wird hinten wieder angefangen. Das Umgekehrte gilt für Bahnhöfe mit zu großer Nummer. Fährt man bei 100 Bahnhöfen also beispielsweise vom Bahnhof Nummer 5 zum Bahnhof Nummer 5 - 11 = -6, dann kommt man beim Bahnhof Nummer 94 an. Fährt man vom Bahnhof Nummer 8 zum Bahnhof Nummer 8 * 13 = 104, dann kommt man beim Bahnhof Nummer 4 an. Mathematisch gesprochen wird im Restklassenring modulo N gerechnet.


// €dit: hmpf, zu spät^^


zu der Sache mit maximalem optimalen Preis per N: garnicht so einfach, da der maximale Preis schon variiert, je nachdem welchen Startbahnhof man nimmt - ich hab mal testweise nen paar Werte angeschaut:

Wenn zwischen den zusammengefassten Zahlen was ausgelassen ist dann ist Min und Max genauso wie bei der vorherigen Zahl.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
N               Min Preis               Max Preis
168             11                      15
169             11                      12

350             10                      13
351             13                      14
352             10                      12

1984            14                      16
1985            13                      15
1989            16                      17
1990            13                      16

9000            16                      18
9002            16                      17
9004            16                      18
9008            16                      17
9009            18                      20


Ne Formel dazu müsste also ziemlich krank ausschaun^^

Anonymous

unregistriert

29

23.02.2008, 16:05

Zitat von »"p0llux"«

Bei den letzten beiden Fällen gibt es keine Bahnhöfe, die man anfahren kann. Was ist hier los?!
Nichts besonderes, ausser das du die Aufgabe nicht richtig gelesen hast. f'`8k

[ ] Autocogito


Gruß, TGGC (making great games since 1992)

p0llux

Treue Seele

Beiträge: 101

Wohnort: Aachen

Beruf: HiWi (theo. Inf.)

  • Private Nachricht senden

30

23.02.2008, 16:05

Das ist ja doof :( Aber gut. Damit hat sich der Teil auch beantwortet.

Werbeanzeige