3.4 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 5900f4a71000cf542c50ffba | Problem 315: Digital root clocks | 1 | 301971 | problem-315-digital-root-clocks |
--description--
Sam und Max sollen zwei Digitaluhren in zwei "Digitale Wurzel-Uhren" umwandeln.
Eine digitale Wurzel-Uhr ist eine digitale Uhr, die Schritt für Schritt digitale Wurzeln berechnet.
Wenn eine Uhr mit einer Zahl gefüttert wird, zeigt sie diese an und beginnt dann mit der Berechnung, wobei sie alle Zwischenwerte anzeigt, bis sie zum Ergebnis kommt. Wenn die Uhr zum Beispiel mit der Zahl 137 gefüttert wird, zeigt sie: 137 → 11 → 2 an und wird dann schwarz, während sie auf die nächste Zahl wartet.
Jede digitale Zahl besteht aus einigen Lichtsegmenten: drei horizontalen (oben, Mitte, unten) und vier vertikalen (oben links, oben rechts, unten links, unten rechts). Die Zahl 1 besteht aus vertikal oben-rechts und unten-rechts, die Zahl 4 besteht aus der mittleren Horizontalen und Vertikalen oben-links, oben-rechts und unten-rechts. Nummer 8 beleuchtet sie alle.
Die Uhren verbrauchen nur dann Energie, wenn die Segmente ein- und ausgeschaltet werden. Das Einschalten einer 2 kostet 5 Übergänge, während ein 7 nur 4 Übergänge kostet.
Sam und Max haben zwei verschiedene Uhren gebaut.
Sams Uhr wird z.B. mit der Nummer 137 gespeist: die Uhr zeigt 137, dann wird das Panel ausgeschaltet, dann wird die nächste Zahl (11) eingeschaltet, dann wird das Panel wieder ausgeschaltet und schließlich wird die letzte Zahl (2) ein- und nach einiger Zeit wieder ausgeschaltet.
Für das Beispiel mit der Nummer 137 benötigt Sams Uhr:
137:(2 + 5 + 4) × 2 = 22Übergänge (137an/aus).11:(2 + 2) × 2 = 8Übergänge (11an/aus).2:(5) × 2 = 10Übergänge (2an/aus).
Für eine Gesamtsumme von 40 Übergängen.
Max's Uhr funktioniert anders. Anstatt das gesamte Panel abzuschalten, ist sie klug genug, nur jene Segmente auszuschalten, die für die nächste Nummer nicht benötigt werden.
Für die Nummer 137 ist Max' Uhr erforderlich:
137:2 + 5 + 4 = 11Übergänge (137angeschaltet),7Übergänge (um die Segmente auszuschalten, die für Nummer11nicht benötigt werden).11:0transitions (number11is already turned on correctly),3transitions (to turn off the first1and the bottom part of the second1; the top part is common with number2).2:4Übergänge (um die verbleibenden Segmente einzuschalten, um eine2zu erhalten),5Übergänge (um die Zahlen2auszuschalten).
Für eine Gesamtsumme von 30 Übergängen.
Natürlich verbraucht die Uhr von Max weniger Strom als die von Sam. Den beiden Uhren werden alle Primzahlen zwischen A = {10}^7 und B = 2 × {10}^7 zugeführt. Ermittle die Differenz zwischen der Gesamtzahl der Übergänge, die Sams Uhr benötigt, und derjenigen, die Max' Uhr benötigt.
--hints--
digitalRootClocks() sollte 13625242 zurückgeben.
assert.strictEqual(digitalRootClocks(), 13625242);
--seed--
--seed-contents--
function digitalRootClocks() {
return true;
}
digitalRootClocks();
--solutions--
// solution required