Programlama Bulmacaları ve Kod Golfü

Bulmaca meraklılarının ve kod golfçülerinin programlanması için soru-cevap

30
Tekrarlanan! Faktoriyel!
Şununla karıştırılmaması gereken faktörleri bulun! Giriş Tamsayı faktöryel nhesaplanabilir n!=n×(n−1)×(n−2)×(...)×2×1n!=n×(n−1)×(n−2)×(...)×2×1n!=n\times(n-1)\times(n-2)\times(...)\times2\times1 Bu nispeten kolay ve yeni bir şey değil. Ancak, faktöriyel kadar uzatılabilir çift faktöriyellerinin , öyle ki n!!=n×(n−2)×(n−4)×(...)×4×2n!!=n×(n−2)×(n−4)×(...)×4×2n!!=n\times(n-2)\times(n-4)\times(...)\times4\times2 çift sayı için, ve n!!=n×(n−2)×(n−4)×(...)×3×1n!!=n×(n−2)×(n−4)×(...)×3×1n!!=n\times(n-2)\times(n-4)\times(...)\times3\times1 Tek sayılar için 1. Ancak çift faktörlülerle sınırlı değiliz. Örneğin n!!!=n×(n−3)×(n−6)×(...)×6×3n!!!=n×(n−3)×(n−6)×(...)×6×3n!!!=n\times(n-3)\times(n-6)\times(...)\times6\times3 ya da n!!!=n×(n−3)×(n−6)×(...)×5×2n!!!=n×(n−3)×(n−6)×(...)×5×2n!!!=n\times(n-3)\times(n-6)\times(...)\times5\times2 ya da n!!!=n×(n−3)×(n−6)×(...)×4×1n!!!=n×(n−3)×(n−6)×(...)×4×1n!!!=n\times(n-3)\times(n-6)\times(...)\times4\times1 …

21
Çarpması kolay sayılar
Göreviniz iki sayının çarpmanın kolay olup olmadığını belirlemektir . Bu, 10 taban uzunluğundaki çarpma işleminin, hem çarpma adımlarına hem de toplama adımına bakarak, yer değerleri arasında hiçbir taşıma (yeniden gruplandırma) olmadığı anlamına gelir . Bu, çarpılan her hane çifti 9 veya daha az verdiğinde ve her sütunun toplamı 9 veya …


22
Bir dizgeyi patlat
Herhangi bir dize verildiğinde, metnin her köşegen boyunca yukarı ve aşağı doğru gittiği bir üçgen şeklinde yazdırın. Örneğin, bir girdi "Hello World"çıktı olmalıdır: d l r d o l W r d o l o W r d l o l l o W r d e l o l …

22
Bana bir şehir kur
Kodlayıcılar her zaman dizileri sıkıcı 1 boyutlu varlıklara düzleştirmeye çalışıyorlar ve bu beni üzüyor. Göreviniz, hoş bir şehir manzarası yaratan, rastgele bir karakter dizisini çözmektir. Dizeyi düşünün: aaabbbbbccqrrssstttttttPPw Böyle daha iyi görünüyor: tt tt bb tt bb tt aabb sstt aabbcc rrssttPP aabbccqqrrssttPPww (Tamam, evet, harfler daha çok şehir manzarası …

18
26 Şarkıcı, 26 Harf
RollingStone'a göre , tüm zamanların en iyi 26 şarkıcısı aşağıdadır: Aretha Franklin Al Green Ray Charles Robert Plant Elvis Presley Mick Jagger Sam Cooke Tina Turner John Lennon Freddie Mercury Marvin Gaye Bob Marley Bob Dylan Smokey Robinson Otis Redding Johnny Cash Stevie Wonder Etta James James Brown David Bowie …

30
Dizi Toplamını Ters Çevir
Programınız girdi olarak bir dizi almalıdır. Dizi: Her zaman 1 boyutlu olacak Sadece tamsayılar içerecektir Boş olabilir Program diziyi tersine çevirmeli ve sonra öğeleri orijinali eklemelidir; örneğin: Giriş: [1, 2, 3] Orijinal: [1, 2, 3] ters: [3, 2, 1] [1, 2, 3] + + + [3, 2, 1] [1+3, 2+2, …

17
Bana bir numara yılanı sar!
Bir giriş tamsayı verilen n, bir ızgara, ölçüm bir sayı yılan çizmek n x nnumaralarını içerir 1yoluylan^2 aşağıdaki şekilde birbiri etrafında sarılması: Giriş n = 3: 7 8 9 6 1 2 5 4 3 Giriş n = 4: 7 8 9 10 6 1 2 11 5 4 3 …
34 code-golf 

30
Bir Tamsayı Matrisinin Belirleyicisi
Giriş olarak kare tamsayılı bir matris verildiğinde, matrisin determinantını çıktılar. kurallar Matristeki tüm öğelerin, matrisin belirleyicisinin ve matristeki toplam öğe sayısının, diliniz için temsil edilebilir tam sayı aralığında olduğunu varsayabilirsiniz. 0'ın kesirli bir kısmı ile bir ondalık / değişken değerin çıkmasına izin verilir (örneğin 42.0yerine 42). Yerleşiklere izin verilir, ancak …

30
Bir Sayı Aralığını Geri Al
Bu oldukça basit bir numara verilir n, bir dizi oluşturmak 0için n-1. Aslında, birçok dil bu işlemi yerleşik olarak sağlar. Aşağıdaki CJam programı bir tamsayı okur ve sonra böyle bir aralığı yazdırır ( Çevrimiçi deneyin! ): ri, Ayırıcı olmadan sayıları yazdırdığına dikkat edin . Meydan okuma Görevin bu süreci tersine …

16
XKCD Şifre Üretici
Giriş Görünüşe göre, bu soru burada soruldu ve ne yazık ki kapandı. Tekrar denemenin iyi bir fikir olduğunu düşündüm, ama doğru yaptım. XKCD , "şifreleri hatırlaması zor" u kullanmak için nasıl eğitildiğimize bakar, güvenli olduğunu düşünür , ancak bunun yerine, bir bilgisayarın kırılması 3 gün sürer. Kapak tarafında, 4-5 kelimeyi …
34 code-golf  math 

30
Bir dizeyi bir sayı ile çarpın!
Orada bir meydan okuma bir süre önce yukarı dizeleri çarparak yaklaşık. Bize sadece sayıları değil aynı zamanda dizeleri nasıl çarpabileceğimizi gösterdi. Ancak, hala bir sayıyı bir dizge ile doğru şekilde çarpamıyoruz. Bunu yapmak için bir girişimde bulunuldu , ancak bu açıkça yanlıştır. Bunu düzeltmemiz gerek! Senin görevin: Bir dize ve …

30
1'den n'ye serpiştirme sayıları, aynı sayılar tersine çevrilmiş
Basit bir tane: Pozitif bir tamsayı al n arasında tamsayılardır az 1000 den, ve çıkış , 1 ile n arasındaki tamsayılar ile içiçe n için 1 . Numaraları, aralarında sınırlayıcı olmadan görünecek şekilde birleştirmelisiniz. Test durumları: n = 1 11 n = 4 14233241 n = 26 12622532442352262172081991810171116121513141413151216111710189198207216225234243252261 n = …

8
ASCII-Sanat Metnini Okuyun
Golf bana ilham verdi bu ASCII Alfabe , ki bu meydan okuma (neredeyse) doğrudan bir ters. Görev: Bir dizi ASCII-art metni alın ve metnin içeriğini normal ASCII metni olarak çıkarın. Giriş: ASCII-art metni Girdi yalnızca ASCII karakter örnekleri #, boşluklar ve 4 veya 5 yeni satır içerecektir (takip eden bir …

6
Lambda'da atama için Python geçici çözümleri
Bu Python'da golf oynamak için bir ipucu. Python golfünde, bir sunumun lambda olarak tanımlanan bir fonksiyon olması yaygındır. Örneğin, f=lambda x:0**x or x*f(x-1) x'in faktörünü hesaplar . Lambda formatının iki büyük avantajı vardır : Bir klişe f=lambda x:...veya lambda x:...daha kısadır def f(x):...return...yax=input()...print... Özyinelemeli bir çağrı, küçük bayt ek yükü …
34 code-golf  tips  python 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.