Bu mücadelede iki önemli sorunu bir kerede çözmeye çalışıyoruz. Onlar:
- Verilen tamsayılar bir ve b bir eğer, söyle b -1 bir asal sayıdır.
- A ve b tam sayılarına bakıldığında , nCr (a, b) değerini döndürün .
Özellikle, biri ilk işi diğeri diğeri yapan iki program yazmalısınız. Her iki sorunu da aynı anda çözmek istediğimiz için, her iki programda da aynı kod parçasını kullanmaya teşvik edilir.
puanlama
Bir cevabın puanı, iki program arasındaki Levenshtein mesafesidir. Düşük puan daha iyidir. Beraberlik durumunda, iki programın en kısa kombine koduna sahip cevap kazanır. Çözümünüzün puanını hesaplamak için bu betiği kullanabilirsiniz .
kurallar
- Yukarıda açıklanan görevleri çözen aynı dilde iki program yazmalısınız. İstediğiniz herhangi bir G / Ç yöntemini kullanabilirsiniz. Görev 1 için, bir hakikat / yanlışlık değeri veya doğru ve yanlış anlamında iki değeri seçip uygun şekilde geri getirebilirsiniz. Örneğin. Bunun
"prime"
doğru ve"not prime"
yanlış anlamına geldiğini seçebilirsiniz . - Kullandığınız algoritmalar, tüm olası girişler için çalışmalıdır, ancak kullanılan sayı türünün sınırlamaları nedeniyle büyük sayılar için başarısız olursa sorun olur. Girişin geçerli olduğunu varsayabilirsiniz.
Örneğin, programın hiçbir alt grubu sorunu çözmemelidir. Herhangi bir karakter (ler) kaldırılırsa, kod çalışmamalıdır. Örneğin, aşağıdaki kod geçerli değildir, çünkü kullanılmayan else-block’u programı bozmadan kaldırmak mümkündür:
if (1) { /* change to 0 to get the second program*/ ... } else { ... }
Standart boşluklara izin verilmez.
Test durumları
a b -1 asaldır?
a b
1 1 false
2 3 true
5 2 false
2 5 true
4 3 false
2 7 true
nCr
a b nCr(a,b)
1 1 1
5 2 10
4 3 4
10 7 120
12 5 792