Điều này dựa trên thử thách này và ý tưởng của Geobits / RugPython để cải thiện nó:
Đối với thử thách này, khoảng cách giữa hai số được đo trên một vòng lặp, vì vậy, ví dụ, khoảng cách giữa 0 và 999 là 1. Điều này sẽ ngăn các chiến lược như luôn luôn chọn số thấp nhất hoặc cao nhất chiến thắng gần như mọi lúc. Sự thay đổi duy nhất khác là số thấp nhất có thể được chọn bây giờ là 0 thay vì 1.
Tôi sẽ tóm tắt ở đây:
- Viết hàm bằng Java, Python hoặc Ruby có ba đối số:
- số vòng đã chơi
- số lượng người chơi
- các số được chọn trong các vòng trước, dưới dạng một chuỗi các chuỗi được phân tách bằng dấu cách
- Nó sẽ trả về một số nguyên từ 0 đến 999, đã bao gồm
- Điểm cho một chương trình mỗi vòng là tổng số căn bậc hai của khoảng cách đến các số mà mỗi chương trình đã chọn
- Chương trình có số điểm cao nhất sau 100 vòng chiến thắng.
- Một câu trả lời cho mỗi người
Chương trình kiểm soát ở đây:
https://github.com/KSFTmh/src/
Bảng xếp hạng
NumberOne, bởi TheBestOne, đang chiến thắng.
- Số lượng - 9700
- SốOnePlusFourNineNine - 9623
- Cổ đại - 9425
- Bộ tìm kiếm - 9259
- Wow ThisGameIsSoDeep - 9069
- Bộ lấy mẫu - 9014
- SabotageCampers - 8545
Rõ ràng, kẻ phá hoại cắm trại của tôi ... er (?) Không hoạt động tốt.
Dưới đây là kết quả đầy đủ: https://github.com/KSFTmh/src/blob/master/results-3
Tôi nghĩ rằng điều này là đủ khác nhau để không bị trùng lặp.
Nhân tiện, đây là lần đầu tiên tôi đặt câu hỏi trên Stack Exchange, vì vậy hãy cho tôi biết nếu tôi làm sai điều gì.