Trong thử thách này, chúng tôi cố gắng giải quyết hai vấn đề quan trọng cùng một lúc. Họ đang:
- Cho các số nguyên a và b , cho biết a b -1 có phải là số nguyên tố không.
- Cho các số nguyên a và b , trả về nCr (a, b).
Cụ thể, bạn phải viết hai chương trình, một chương trình thực hiện nhiệm vụ đầu tiên và một chương trình khác thực hiện. Vì chúng tôi muốn giải quyết cả hai vấn đề cùng một lúc, nên sử dụng cùng một đoạn mã trong cả hai chương trình.
Chấm điểm
Điểm của một câu trả lời là khoảng cách Levenshtein giữa hai chương trình. Điểm thấp hơn là tốt hơn. Trong trường hợp hòa, câu trả lời có mã kết hợp ngắn nhất của hai chương trình sẽ thắng. Bạn có thể sử dụng tập lệnh này để tính điểm của giải pháp của bạn.
Quy tắc
- Bạn phải viết hai chương trình trong cùng một ngôn ngữ để giải quyết các nhiệm vụ được mô tả ở trên. Bạn có thể sử dụng bất kỳ phương pháp I / O nào bạn muốn. Đối với nhiệm vụ 1, bạn có thể trả về giá trị trung thực / giả hoặc chọn hai giá trị có nghĩa là đúng và sai và trả lại chúng cho phù hợp. Ví dụ. bạn có thể chọn điều đó
"prime"
có nghĩa là đúng và"not prime"
có nghĩa là sai. - Các thuật toán bạn sử dụng phải hoạt động cho tất cả các đầu vào có thể, nhưng sẽ ổn nếu mã không thành công cho số lượng lớn do giới hạn của loại số được sử dụng. Bạn có thể cho rằng đầu vào là hợp lệ.
Không có tập hợp con của chương trình phải giải quyết vấn đề, tức là. mã không được hoạt động nếu bất kỳ (các) ký tự nào bị xóa. Ví dụ: đoạn mã sau không hợp lệ, vì có thể loại bỏ khối khác không sử dụng mà không phá vỡ chương trình:
if (1) { /* change to 0 to get the second program*/ ... } else { ... }
Sơ hở tiêu chuẩn không được phép.
Các trường hợp thử nghiệm
a b -1 là số nguyên tố?
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