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

Mirlix

Supermoderator

Beiträge: 451

Beruf: Developer Advocate

  • Private Nachricht senden

61

27.02.2008, 17:15

Darf man das ganze Zeug vom Kompiler ausrechen lassen und dann nur noch ausgeben? (Glaube eher nicht, wobei des Ergebniss bestimmt interessant wäre :) )

PS: Ich bin für die Einführung eines Sonderpreises für die Kreativste Lösung, so mal als Idde für den nächsten Contest

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

62

27.02.2008, 18:19

Wie meinst du das, vom Compiler ausrechnen lassen? Mit Templates?
Das wird nicht gehen, da die Template-Argumente ja zur Kompilierzeit bekannt sein müssen.

Mirlix

Supermoderator

Beiträge: 451

Beruf: Developer Advocate

  • Private Nachricht senden

63

27.02.2008, 18:39

Sind sie das nicht?Kann aber nicht sicher sagen ob es geht, habe dafür noch nicht genug mit Templates gemacht, ein Versuch wäre aber mal interessant. Da die Testerte ja in der Liste sind sind sie dem Kompiler bekannt. Glaube eher das das Problem zu komplex ist um es den Kompiler rechnen zu lassen, nach ein paar 100 rekursionen ist normalerweise schluss, wenn er überhaupt so weit kommt:)

Evt. kann ja jemand mit mehr Erfahrung im Metaprogrammieren seinen Senf dazugeben:)

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

64

27.02.2008, 18:43

Zitat von »"Mirlix"«

Da die Testwerte ja in der Liste sind sind sie dem Kompiler bekannt.

Ja, aber wer sagt, dass ich bei der Auswertung auch genau mit diesen Werten teste?
Ansonsten wäre es theoretisch schon möglich, da C++-Templates Turing-vollständig sind. Aber ich glaube kaum, dass irgendein Compiler das mitmachen würde.

Mirlix

Supermoderator

Beiträge: 451

Beruf: Developer Advocate

  • Private Nachricht senden

65

27.02.2008, 18:55

Wenn ich etwas Zeit ha versuch ich mich mal dran.
Natürlich nimmst du andere Werte, aber wenn ich mich nicht täusche reicht es dem Kompiler wenn sie im quellcode stehen damit er sie über templates beim kompileren auswerten kann.

Glaube aber auch das eher die komplexität dem Kompiler probleme machen wird.

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

66

27.02.2008, 19:19

Und wenn ich Zufallswerte nehme?

Mirlix

Supermoderator

Beiträge: 451

Beruf: Developer Advocate

  • Private Nachricht senden

67

27.02.2008, 19:20

bist du böse :), wobei ich es eh bis zum ende des contest es nicht fertig haben werde
Wobei es mir eher darum geht ob man sowas überhaupt mit templates machen kann.

68

27.02.2008, 22:39

Kann man ...
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

69

02.03.2008, 14:58

Interessant:
Bei einer geraden Anzahl von Bahnhöfen sind die Kosten für den Hin- und Rückweg zwischen zwei beliebigen Stationen immer entweder beide gerade oder beide ungerade.

Ich habe mittlerweile auch ordentlich an meiner Lösung gearbeitet! :)
Unten seht ihr übrigens noch drei weitere Testfälle mit Kosten von 27, 28 und 29. Hat jemand von euch mal 30 oder mehr bekommen?

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from      to        num_stations   Ergebnis  Korrekt   OK?       Zeit (ms)
---------------------------------------------------------------------------
0         0         1              0         0         Ja        0.000185187
0         1         2              1         1         Ja        0.00441313
1         13        100            2         2         Ja        0.00415062
5         6         10             3         3         Ja        0.00439776
1         169       1000           4         4         Ja        0.00504258
0         49        50             5         5         Ja        0.00547188
1         197       500            6         6         Ja        0.00550257
10        349       1000           7         7         Ja        0.0061049
1         2193      5000           8         8         Ja        0.00793
4994      2193      5000           9         9         Ja        0.00929468
1         71293     100000         10        10        Ja        0.0104136
1         71300     100000         11        11        Ja        0.0147892
0         98102     100000         12        12        Ja        0.0165431
0         98109     100000         13        13        Ja        0.0166188
12        8192      10000          14        14        Ja        0.0218622
1         48506     100000         15        15        Ja        0.0387477
513       77925     100000         16        16        Ja        0.0513305
103       77282     100000         17        17        Ja        0.0699301
5001      500001    1000000        18        18        Ja        0.399106
1         5730742   10000000       19        19        Ja        2.2604
1         8491849   10000000       20        20        Ja        2.37982
1250358   9140287   10000000       21        21        Ja        3.003
1         9140287   10000000       22        22        Ja        2.97442
5339546   1588123   6640162        23        23        Ja        3.59454
4971805   3783278   5042105        23        23        Ja        2.30734
1663142   3633657   8313554        23        23        Ja        3.92157
1156811   3514077   6228554        24        24        Ja        3.4153
3161534   3260614   6801046        24        24        Ja        3.62845
9394725   6873969   9608835        24        24        Ja        4.65549
9045292   437535    9655704        25        25        Ja        4.54959
26480     4188320   9978560        26        26        Ja        6.33714
3049806   7726710   8456639        26        26        Ja        6.82128
1         4826809   4826885        7         7         Ja        0.720254
7163175   6943320   9994544        27        27        Ja        7.26744
2584648   2252496   9567506        28        28        Ja        4.59982
5522674   9029201   9340344        29        29        Ja        6.59631

Alles OK!


(allerdings mit einem Athlon64 2200 MHz)

marfi

Treue Seele

Beiträge: 100

Wohnort: Schwerte

  • Private Nachricht senden

70

04.03.2008, 17:21

Hallo!

Eigentlich dachte ich, dass ich jetzt auch mal bei diesem Contest mitmache. Die Idee finde ich echt Klasse.

Eigentlich dachte ich auch das es einfach wäre.

Eigentlich komme ich mir jetzt auf dämlich vor.

Aber ich frage trotzdem :)

Wie funktioniert das?

test_cases.push_back(TestCase(5, 6, 10, 3));

Also meine Gedanken:
Ich fahre von Bahnhof 5 nach 6, das ist für mich eine Station. Also eigentlich eine sm. Da es aber 10 Stationen sein sollen, wäre es (x *13) 2 sm.
Die Lösung ist aber 3 sm oO

Bin ich zu blöd oder habe ich irgendwas wichtiges verpasst??

Ich danke für eine Antwort.

Und sagt mir nicht wie blöd ich bin, das weiß ich selber :D

Werbeanzeige