Bazen gerçekten sıkıldığımda, negatif olmayan bir tamsayı dizisinin toplamını almak isterim. Sadece ikisinin gücü olan uzunluk dizilerinin toplamını alıyorum. Ne yazık ki sık sık hata yapıyorum. Neyse ki, şu şekilde ilerledikçe çalışmalarımın kaydını tutuyorum:
Sadece bir tane kalana kadar bitişik sayıları çiftleri ekliyorum. Örneğin:
6 + 18 + 9 + 6 + 6 + 3 + 8 + 10
= 24 + 15 + 9 + 18
= 39 + 27
= 66
İşin bir yerde bir hata mı yaptım belirlemek. Girişin işleve iletilmesini sağlayabilir veya standart içeriden okuyabilirsiniz. Çıktı yazdırılabilir veya iade edilebilir.
Giriş: Bir dizi / liste / etc. Negatif olmayan tamsayılar ve diliniz gerektiriyorsa muhtemelen bu dizinin uzunluğu. Bu dizi soldan sağa ve sonra yukarıdan aşağıya okunan tüm sayılar olacaktır. Örneğin, yukarıdaki dizi olur:
[[6, 18, 9, 6, 6, 3, 8, 10], [24, 15, 9, 18], [39, 27], [66]]
ya
[6, 18, 9, 6, 6, 3, 8, 10, 24, 15, 9, 18, 39, 27, 66]
da istersen.
Çıktı: Bir hatanın yapılıp yapılmayacağını temsil eden tek bir boolean. Boolean, bir hata yapılan tüm girdilerin aynı sonucu döndürmesi / yazdırması ve hata içermeyen tüm girdinin aynı sonucu döndürmesi / yazdırması koşuluyla herhangi bir haritalama kullanılarak temsil edilebilir . Bu söylemeden geçmeli, ancak bu iki çıktı aynı olamaz.
Bazı Doğru Toplama Örnekleri:
6
5+6
=11
3 + 2 + 4 + 5
= 5 + 9
= 14
[0, 1, 2, 3, 1, 5, 6]
[[1, 2, 4, 8], [3, 12], [15]]
Bazı Yanlış Toplama Örnekleri:
5+4
=8
4 + 4 + 4 + 4
= 9 + 7
= 16
[[1, 2, 3, 4], [7, 3], [10]]
[3, 4, 5, 6, 7, 8, 9]
Hata yapabileceğimi ve hala doğru cevabı alabileceğimi unutmayın. Eğer bir hata yaparsam, son dizide asla fazladan bir sayı veya eksik bir sayı olmaz, sadece yanlış bir sayı verilir.
Standart boşluklar yasaktır. Her dilde en kısa cevap kazanır. Eski cevap, beraberlik durumunda kazanacaktır. "Aynı dilin" ne olduğuna karar verme hakkını saklı tutarım, ancak açıkça söyleyeyim, hem Python 2 hem de Python 3'te bir puan kazanılamaz.
[0,1,2,3,1,5,6]
, "Girdi: pozitif tamsayıların bir dizisi / listesi / etc."