Letzten Monat habe ich viele Bücher aus der Bibliothek ausgeliehen. Sie alle waren gute Bücher, voller Emotionen und Wendungen. Leider wurde ich an einigen Stellen sehr wütend / traurig / enttäuscht und riss einige Seiten heraus.
Jetzt möchte die Bibliothek wissen, wie viele Seiten ich für jedes Buch herausgerissen habe.
Ihr Ziel ist es, ein Programm zu schreiben, das eine sortierte, durch Kommas getrennte Liste von Zahlen als Eingabe verwendet und die minimal und maximal mögliche Seitenzahl ausgibt, die ich herausgerissen haben könnte. Jede Zeile repräsentiert ein Buch, jede Zahl repräsentiert eine fehlende Seite aus dem Buch.
Beispiel Eingabe:
7,8,100,101,222,223
2,3,88,89,90,103,177
2,3,6,7,10,11
1
1,2
Beispielausgabe:
4/5
5/6
3/6
1/1
1/2
4/5
Das bedeutet, dass ich möglicherweise 4 oder 5 Seiten herausgerissen habe, je nachdem, auf welcher Seite die Seitennummerierung des Buches beginnt. Man hätte Seite 6/7, Seite 8/9, Seite 100/101 und Seite 222/223 (4 Seiten) herausreißen können. Alternativ könnte man Seite 7/8, Seite 99/100, Seite 101/102, Seite 221/222 und Seite 223/224 (5 Seiten) herausgerissen haben.
Denken Sie daran, dass eine Buchseite immer eine Vorder- und eine Rückseite hat. Auch die Seitennummerierung unterscheidet sich von Buch zu Buch. Einige Bücher haben auf der linken Seite gerade Seitenzahlen. einige auf der rechten Seite. Alle Bücher werden von links nach rechts gelesen.
Kürzester Code in Bytes gewinnen. Ein striktes E / A-Format ist nicht erforderlich. Ihre Programme müssen in der Lage sein, ein oder mehrere Bücher als Eingabe zu verwenden. Habe Spaß.
min/max
oder alle konsistent sein muss max/min
. (Obwohl ich persönlich es vorziehen würde, dass das nicht Teil der Spezifikation ist!)
programs must be able to take one or more books as input
herrschen? Die meisten (wenn nicht alle) wickeln den Code einfach ein, um ein einzelnes Buch in eine Schleife oder so etwas zu verifizieren. IMHO fügt es nur einen Overhead zu der Antwort hinzu, mit wenig bis gar keinem Gewinn für die Herausforderung. Diese Fragen haben bereits viele Antworten erhalten, daher ist es besser, diese so zu belassen, wie sie sind, dies jedoch für zukünftige Herausforderungen im Auge zu behalten.
1,3,5,7,9,11,13,15,17,18
- Für Sprachen, deren integrierte sort
Methode standardmäßig lexikografisch sortiert ist (vorausgesetzt , der Spezifikation wird die Anforderung einer konsistent sortierten Ausgabe hinzugefügt).
4/5
und5/4
)