Auch von mir natürlich Glückwunsch an TGGC.
Helmut: Ich ärger mich eigentlich nur darüber, dass ich nicht dieses nennen wir es mal Ctor-Unrolling gemacht hab, was hier ca. 5% schneller war. Sprich direktes Setzen der Recttree-Grenzen statt die als Parameter an den Ctor zu übergeben.
Hab nachher nur noch in VS entwickelt und ab un zu per GCC getestet. Da war dann die zusätzliche Speicherung der durch den Knoten abgedeckten Fläche was schneller anstatt bei isFull jedesmal die Multiplikation zu machen. Beim GCC hingegen wars glaub ich mit Speichern von area sogar was langsamer als das jedesmal neu auszurechnen.
Naja, ich hatte das dann schon so drin und hatte keine Lust mehr, das Berechnen der Fläche bei jedem Ctor-Aufruf nochmal manuell einzufügen. Ansonsten wäre meine Abgabe ca. 5% schneller gewesen, wobei man natürlich wieder nicht weiss, ob das auch auf den beiden Testrechnern so geklappt hätte.
Dass ich bei 128 und 256 so viel langsamer bin, überrascht mich zwar, aber ärgern muss ich mich da nicht. Ich hab nämlich selbst durch nen Benchmark auf meinen beiden Rechnern fast die genaue Grenze ermittelt, an der die jeweiligen Algorithmen schneller sind. Dummerweise liegt die Grenze hier bei image_size 128 bei 1280, bei 256 immerhin noch bei 400. Dadurch wurde natürlich bis auf bei 128,1000 immer der Recttree Painter benutzt. Hätte ich das auch bei 256,1000 so gemacht, hätte ich vllt. die fehlenden 3.59 Punkte aufgeholt. Aber hinterher ist man ja immer schlauer