Wieso? Was soll daran so kompliziert sein?
Du kannst dir nicht vorstellen, was an einer nahezu semantischen Analyse des Codes schwierig sein soll? :roll:
Unter anderem, Redundanzen wie die folgenden rauszuoptimieren:
|
C-/C++-Quelltext
|
1
2
|
int x;
x = 3;
|
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
|
if (x <= 3)
{
x = 3;
}
else
{
x = (3*x)/2;
}
|
|
C-/C++-Quelltext
|
1
2
3
4
5
6
|
double d = 3.14;
double c = 4.67;
d *= arr[x];
arr[x] -= 3;
++x;
c += d;
|
Vor allem letzteres könnte man zum Beispiel auf Kosten der Übersichtlichkeit recht zusammenfassen. Und eine Automatisierung von solchen Dingen hat man nicht so schnell, schnell geschrieben. Das geht schon Richtung Compilerbau...
Und auch von solchen Code-Stücken abgesehen: Verzichtet man da nicht fast immer auf einigermassen sauberen Code? Ich denke, Const-Correctness und Referenzübergabe etc. werden wohl weitgehend ignoriert.
Aber eben, es geht ja in den Contests um Kürze des Codes, da spielt Übersichtlichkeit wahrscheinlich keine grosse Rolle. Ich wollte eigentlich nur fragen, ob Contests dieser Art nicht sehr häufig auf ein Riesengefrickel hinauslaufen...