Dalam tantangan ini kami mencoba menyelesaikan dua masalah penting sekaligus. Mereka:
- Diberikan bilangan bulat a dan b , beri tahu apakah b -1 adalah bilangan prima.
- Dengan bilangan bulat a dan b , kembalikan nCr (a, b).
Secara khusus, Anda harus menulis dua program, satu yang melakukan tugas pertama dan satu yang melakukan yang lain. Karena kami ingin menyelesaikan kedua masalah sekaligus, disarankan untuk menggunakan kode yang sama di kedua program.
Mencetak gol
Skor jawaban adalah jarak Levenshtein antara kedua program. Skor yang lebih rendah lebih baik. Dalam hal seri, jawaban dengan kode gabungan terpendek dari kedua program akan menang. Anda dapat menggunakan skrip ini untuk menghitung skor solusi Anda.
Aturan
- Anda harus menulis dua program dalam bahasa yang sama yang menyelesaikan tugas yang dijelaskan di atas. Anda dapat menggunakan metode I / O yang Anda inginkan. Untuk tugas 1, Anda dapat mengembalikan nilai kebenaran / kepalsuan atau memilih dua nilai yang berarti benar dan salah dan mengembalikannya sesuai. Misalnya. Anda dapat memilih itu
"prime"
berarti benar dan"not prime"
berarti salah. - Algoritma yang Anda gunakan harus bekerja untuk semua input yang mungkin, tetapi tidak apa-apa jika kode gagal untuk angka besar karena keterbatasan tipe nomor yang digunakan. Anda dapat mengasumsikan bahwa input tersebut valid.
Tidak ada subset dari program yang harus menyelesaikan masalah, yaitu. kode tidak boleh berfungsi jika ada karakter yang dihapus. Misalnya, kode berikut ini tidak valid, karena dimungkinkan untuk menghapus blok-blok yang tidak digunakan tanpa merusak program:
if (1) { /* change to 0 to get the second program*/ ... } else { ... }
Tidak ada celah standar.
Uji kasus
a b -1 adalah prime?
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