giriş
Bir arkadaş bugün bu soruyu biraz farklı bir şekilde ortaya koydu: "Tek bir [Python] komutu bazı tamsayıların en büyüğünü VE eşit olmadıklarını belirleyebilir mi?".
Biz bunu "tek bir komut" makul tanımları içinde yapmak için bir yol bulamadı , ama ben golf için eğlenceli bir sorun olabilir düşündüm.
Meydan okuma
" Tamsayılar listesinin büyük Return eğer-ve-only-eğer hepsi eşit değildir. "
Daha spesifik olarak:
Yalnızca virgülle ayrılmış bir tam sayı listesi içeren bir dize verildiğinde:
- Eğer hepsi eşitse, hiçbir şey döndürmez / vermez
- Başka, en büyük dönüş / çıkış
kurallar
- Giriş tamsayılar yalnızca virgülle ayrılmış listesini içeren bir dize olmalıdır
- Çıktı o girişindeyken olarak temsil girişten da bir şey (hiçbir tür çıkış), ya da başka büyük elemanı olmalıdır
Girişleri test etmek için bir yol sağlamanız şartıyla, tam bir program veya sadece bir işlev olabilir!
Varsayımlar
- Giriş listesi öğelerinin birden fazla basamak olabileceğini, ancak (2 32-1 )
- Giriş listesinde bir milyondan fazla öğe bulunmadığını varsayalım
- Girdinin negatif değerler içermeyeceğini varsayın
- Girişin asla boş kalmayacağını varsayalım
Şüpheye yer bırakmamak için, "Daha spesifik olarak" ifadesinden hemen sonra verilen mücadelenin açıklaması, üstündeki mücadelenin ifadesini geçersiz kılar ("En büyüğü döndür ...").
Örnekler
(1) Hepsi eşit:
Input: 1,1
Output:
(2) Farklı:
Input: 1,2
Output: 2
(3) Sıfır !:
Input: 0,0,0,0,0,0,0,1,0,0
Output: 1
(4) Rastgele:
Input: 7,3,8,4,8,3,9,4,6,1,3,7,5
Output: 9
(5) Büyük numaralar, büyük liste:
Input: 627,3894,863,5195,7789,5269,8887,3262,1448,3192
Output: 8887
Ek örnekler:
(6) Hepsi eşit, daha büyük liste:
Input: 7,7,7,7,7,7,7,7,7
Output:
(7) Tüm eşit, büyük liste, büyük sayılar:
Input: 61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976,61976
Output:
(8) Eşit değil, daha büyük liste, daha büyük sayılar:
Input: 96185,482754,96185,96185,96185,96185,96185,96185,7,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,96185,961185,96185,96185,96185
Output: 961185
puanlama
Bu, code-golf
en az sayıda bayt içeren kod kazanır!
7,3,7,2
.
,
girdiye bir boşluk ekleyebilir miyiz ?
None
hiçbir şey çıktılamak yerine null bir değer ( python gibi ) çıkarabilir miyiz ? Ayrıca, giriş neden liste yerine dize olmalıdır? Ve girdideki gibi temsil edilen girdideki en büyük elemanla ne demek istiyorsun?