Geçen ay kütüphaneden bir sürü kitap ödünç aldım. Hepsi de duygularla ve arsa twistleriyle dolu iyi kitaplardı. Ne yazık ki, bazı noktalarda çok kızmış / üzgün / hayal kırıklığına uğradım, bu yüzden bazı sayfaları çıkarttım.
Şimdi kütüphane, her kitap için kaç sayfa çıkardığımı bilmek istiyor.
Amacınız, giriş olarak sıralanan, virgülle ayrılmış bir numara listesi alan ve çıkarabildiğim minimum ve maksimum sayfa sayısını yazdıran bir program yazmaktır. Her satır bir kitabı temsil eder, her sayı kitaptan eksik bir sayfayı gösterir.
Örnek giriş:
7,8,100,101,222,223
2,3,88,89,90,103,177
2,3,6,7,10,11
1
1,2
Örnek çıktı:
4/5
5/6
3/6
1/1
1/2
4/5
bu, kitabın sayfa numaralandırmasının hangi tarafa başladığına bağlı olarak 4 veya 5 sayfa dağıttığım anlamına gelir. Biri sayfa 6/7, sayfa 8/9, sayfa 100/101 ve sayfa 222/223'ü (4 sayfa) parçalamış olabilir. Alternatif olarak, sayfa 7/8, sayfa 99/100, sayfa 101/102, sayfa 221/222 ve sayfa 223/224 (5 sayfa) yırtılmış olabilir.
Bir kitap sayfasının her zaman bir ön ve arka yüzü olduğunu unutmayın. Ayrıca sayfa numaralandırması kitaptan kitaba farklılık gösterir. Bazı kitapların sol sayfada bile sayfa numaraları var; bazıları sağ sayfada. Tüm kitaplar soldan sağa okunur.
Bayt cinsinden en kısa kod kazanır. Sıkı G / Ç formatı gerekli değildir . Programlarınız giriş olarak bir veya daha fazla kitap alabilmelidir. İyi eğlenceler.
min/max
ya da tamamı tutarlı olması gerektiğini belirten zorlukları güncellemeyi unutmayın max/min
. (Her ne kadar kişisel olarak, bu özelliğin bir parçası olmamasını tercih ederim!)
programs must be able to take one or more books as input
? Çoğu (hepsi değilse), tek bir kitabı bir döngüye veya başka bir şeye doğrulamak için kodu saracaktır. IMHO, sadece zorlukla hiçbir kazanç elde edip etmeyecekleri cevabına bir ek yük ekler. Bu soruların zaten çok fazla cevabı var, bu yüzden bunu olduğu gibi tutmak daha iyi, ama bunu gelecekteki zorluklar için aklınızda bulundurun.
1,3,5,7,9,11,13,15,17,18
- yerleşik dil yararına sort
yöntem türlü sözlük sırasında varsayılan olarak (sürekli sıralanmış çıktı gereksinimi varsayarak olan spec eklendi).
4/5
ve5/4
)