Ich habe ein paar Sechskantstangen zu einer seltsamen Skulptur zusammengeklebt. Die Stäbe sind 1 bis 99 cm lang und haben eine Querschnittsfläche von 1 cm². Alle Stäbe sind sechseckig mit mindestens einem anderen Stab verklebt. Die Stangen sind alle an ihrer Unterkante ausgerichtet.
Nach einem heftigen Regen ist die Skulptur voller Wasser. Wie viel Wasser hält es?
Eingang
Ihr Programm sollte (über stdin oder eine Datei) eine Anzahl von Zeilen einlesen, die aus Leerzeichenpaaren und Ziffernpaaren bestehen und die Länge der Stäbe in diesem Format angeben:
aa bb
cc dd ee
ff gg
Jeder Stab (wie hier dd) wird wie in den Beispielen gezeigt mit maximal 6 umgebenden Stäben verklebt. Fehlende Stangen sind Löcher und sammeln kein Wasser. Zum Beispiel die Eingabe
04 04
04 01 03
04 04
würde die folgende Skulptur darstellen:
Die Mittelstange ist hoch 1
(ich habe keinen guten Winkel gefunden, in dem diese Stange auch sichtbar ist). Jetzt konnte die Säule über diesem Stab 2 cm Wasser aufnehmen, bevor es 3
rechts über den Stab lief. Da keine der anderen Stangen Wasser über sich halten kann, wäre die Antwort 2
. Hier sind zwei komplexere Beispiele:
Example 2:
55 34 45 66
33 21 27
23 12 01 77
36 31 74
answer = 35 ( 2 on top of 21
+11 on top of 12
+22 on top of 01, before everything overflows over 23)
Example 3:
35 36 77 22 23 32 54 24
33 07 02 04 21 54 07 07 07 76
20 04 07 07 01 20 54 11 81 81 07 76
20 67 67 22 07 01 78 54 07 81 07 81 09 76
20 67 07 67 22 22 07 44 55 54 07 81 07 07 61 07 20
67 57 50 50 07 07 14 03 02 15 81 99 91 07 81 04
67 07 50 50 87 39 45 41 34 81 07 07 89 07 81 79
67 07 50 50 07 07 07 27 07 27 81 07 07 79 81 78
20 67 67 07 07 07 07 99 33 46 02 81 07 07 81 01 20
33 07 07 01 05 01 92 20 02 81 07 81 15 32
22 07 20 20 07 20 63 02 80 81 15 32
45 20 01 20 39 20 15 07 15 32
23 20 20 29 43 21 18 41 20 66 66 43 21
90 99 47 07 20
50 20 02 48
70 56 20
90
answer = 1432
Ausgabe
Ihr Programm sollte eine einzelne Ganzzahl ausgeben, die das Wasservolumen in Kubikzentimetern angibt.
Ergebnis
Ihre Punktzahl ist die Byteanzahl Ihres Quellcodes. Niedrigste Gewinne.
Die üblichen Regelungslücken sind wie gewohnt verboten.
Dieses Puzzle wurde von einer SPOJ-Frage inspiriert .