Autor Beitrag
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: So 02.12.07 16:46 
Meine 3 Millisekunden sind komplett ohne ASM. Mit ASM sollte da noch eine ms rauszuquetschen sein, aber nunja ... ASM ist das letzte, womit man beim Optimieren anfängt ...

Ach ja: PNut 2: <1 Sekunde zum Bruteforcen des TSP. Die Abweichungen die man erhält sind aber absolut gigantisch. Meine Antwort ist damit erstmal nur vorläufig, muss das erst Verifizieren.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: So 02.12.07 16:59 
@Ben: Mal Interessehalber: Deine 3ms - ist das ein kompletter Durchlauf des "Zahlenraums", oder nur bis eine Zahl gefunden wurde, die alle Bedingungen erfüllt?

_________________
We are, we were and will not be.
Allesquarks
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 510

Win XP Prof
Delphi 7 E
BeitragVerfasst: So 02.12.07 17:14 
Ich verwende auch nur reines Pascal. Bei mir ist es kein kompletter Durchlauf; und eine Abschätzung wieviel dann nach finden der Zahl weggelassen wird, wäre ja ein Tipp wo die Zahl ungefähr liegt. Deshalb dies erst später. Desweiteren gibt es noch eine Optimierung bzw Annahme meinerseits, die man nicht voraussetzen kann, was aber wahrscheinlich war. Patcht man dies wird der Code länger aber bei der Geschwindigkeit schätze ich mal geht das nur zu Bruchteilen ein.

Schade das man noch nicht drüber reden darf :cry:

Edit: @user profile iconGausi: Du als Moderator weißt doch das Ergebnis. du kannst dir also denken wie viel man dann weglässt, wenn man beim ersten Fund aufhört
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: So 02.12.07 17:24 
Er weiß trotzdem nicht, worauf sich die 3ms laufzeit bei Benbes Code beziehen ;)

mfg
Allesquarks
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 510

Win XP Prof
Delphi 7 E
BeitragVerfasst: So 02.12.07 17:27 
@Fear: Ich nehme einfach mal an user profile iconBenBe hat den gleichen Algorithmus wie ich. Und ich kann nur sagen, dass ich zwar vorher abbreche, aber jeder, der den Algorithmus kennt und die binäre Darstellung der Zahl sieht. Sofort eine Antwort auf die Frage hat. Sorry genauer gehts nicht sonst verderbe ich den anderen den Spaß.
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: So 02.12.07 17:29 
Durchlauf, bis ne Zahl gefunden wurde, die alle Bedingungen erfüllt.

Wobei ein Gesamtdurchlauf nicht wesentlich länger dauern dürfte (ich schätz mal ~10ms höchstens ...

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.


Zuletzt bearbeitet von BenBE am So 02.12.07 17:30, insgesamt 1-mal bearbeitet
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: So 02.12.07 17:29 
Ich frag deswegen, weil ich wissen will, wie nah ich an diesen Optimierer-Freak rankomme :lol:

Für einmal komplett brauche ich jetzt ca. 130ms, für Abbruch nach einer gefundenen Zahl ca. 16ms.

_________________
We are, we were and will not be.
Allesquarks
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 510

Win XP Prof
Delphi 7 E
BeitragVerfasst: So 02.12.07 17:36 
Edit vorher falsch: Denkfehler!
@user profile iconGause vlt haben user profile iconBenBe und ich ja unterschiedliche Zahlen oder Algorithmen. Bei mir könnte es bis zu 7 mal so lange dauern. also dann etwa 15 ms
Christian R.
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 02.12.07 18:11 
Jetzt wo ich die Lösung von vornherein auf den möglichen Spielraum, aufgrund der Vorgaben, eingegrenzt habe und dazu von der anderen Seite her rangegangen bin, sind's unter 10 Sekunden. Vorher waren's ca. 10 bis 15 Minuten. Allerdings immer noch nix mit reiner Mathematik. Noch viel zu viel Gemehre.
Mitmischer 1703
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 754
Erhaltene Danke: 19

Win 7, Debian
Delphi Prism, Delphi 7, RAD Studio 2009 Academic, C#, C++, Java, HTML, PHP
BeitragVerfasst: So 02.12.07 19:16 
Wo finde ich denn die Aufgaben? :nixweiss:
Christian S. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: So 02.12.07 19:20 
Im ersten Beitrag dieses Threads ganz unten auf "Und nun zum Adventsgewinnspiel 2007" klicken

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
MrSpock
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: So 02.12.07 20:03 
Hallo,

eine Frage zur Paranuss2: Ist der Startpunkt als Punkt1 festgelegt oder "beamt" er sich quasi an einen beliebigen Anfangspunkt? :hair:

_________________
Live long and prosper
MrSpock \\//
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: So 02.12.07 20:07 
Letzteres. Der Weihnachtsmann plant seine Route so, dass er am Anfang der blauen Stunde an einem geeigneten Punkt ist. Welcher das ist, ist erstmal nicht bekannt. Und wie er da hinkommt, ist egal.

_________________
We are, we were and will not be.
Christian S. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: So 02.12.07 20:07 
Das läuft so: Der Weihnachtsmann isst erst mal ganz gemütlich was bei Mäcces. Dann schwingt der sich auf seinen Schlitten und fährt in aller Ruhe zu einem beliebigen der Orte. Und wenn dann die blaue Stunde anfängt, dann hetzt der sich so richtig ab, um alle Orte noch zu erwischen.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
MrSpock
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: So 02.12.07 20:10 
Danke, und dem Weihnachtsmann einen guten Appetit bei Mäcces. :D

_________________
Live long and prosper
MrSpock \\//
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: So 02.12.07 20:23 
user profile iconGausi hat folgendes geschrieben:
Für einmal komplett brauche ich jetzt ca. 130ms, für Abbruch nach einer gefundenen Zahl ca. 16ms.

Langsam frage ich mich, wie ihr das macht. Bei mir braucht eine leere schleife über dem gesamten Zahlenbereich schon ca. 3 Sekunden... (ohne etwas dabei zu machen...).

Nagut, mir fallen nen ganz paar Optimierungen ein, wo ich vlt. auch auf nen paar ms komme, allerdings reichen da meine knappen huindert zeilen nicht mehr, sondern ich bräuchte bestimmt mindestens 200, und dazu fehlt mir einfach die Zeit ;) (da warte ich lieber paar Minütchen länger, bei einem OneTime-Problem).
Arne K.
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
EE-Autor
Beiträge: 112


C# (VS 2008 Professional)
BeitragVerfasst: So 02.12.07 20:28 
Nein, jetzt frage ich mich langsam, wie hier wer was macht: Ich habe eine leere Schleife in nativem C++ über das Intervall ]0; INT_MAX[ drüber gejagt, und alleine das braucht bei mir eine gute halbe Stunde! Vlt. sollte ich mit meinem PC ja mal zum Mechaniker ;)
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: So 02.12.07 20:30 
In 200 Zeilen hab ich zwei Lösungsverfahren implementiert ...

Gibt eigentlich um auf solche Zeiten zu kommen ganz einfache Tricks ... Da kann ich ja morgen dann mehr zu erzählen ...

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
Christian R.
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 02.12.07 21:23 
user profile iconBenBe hat folgendes geschrieben:
Gibt eigentlich um auf solche Zeiten zu kommen ganz einfache Tricks ... Da kann ich ja morgen dann mehr zu erzählen ...

Eventuell Pointer? :zwinker:
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: So 02.12.07 21:26 
Och mennöööö... Des Programm will ned!

Ich glaube, ich kann das erste Rätsel erst einmal vergessen... Können wir vielleicht morgen einen Thread aufmachen, in der alle ihre Lösungsvorschläge posten? Würde mich echt interessieren.