Quy tắc rất đơn giản:
- Số nguyên tố n đầu tiên (không phải số nguyên tố dưới n ), nên được in thành đầu ra tiêu chuẩn được phân tách bằng dòng mới (số nguyên tố phải được tạo trong mã)
- Các số nguyên tố không thể được tạo bởi hàm inbuilt hoặc thông qua thư viện , nghĩa là sử dụng hàm inbuilt hoặc hàm thư viện, chẳng hạn như Prime = get_nth_prime (n), is_a_prime (number), hoặc listlist = list_all_factors (number) sẽ không sáng tạo.
Ghi điểm - Giả sử, chúng tôi xác định Điểm = f ([số ký tự trong mã]), O ( f (n)) là độ phức tạp của thuật toán của bạn trong đó n là số lượng số nguyên tố tìm thấy. Vì vậy, ví dụ: nếu bạn có mã 300 char với độ phức tạp O (n ^ 2), điểm số là 300 ^ 2 = 90000 , đối với 300 ký tự có O (n * ln (n)), điểm sẽ trở thành 300 * 5.7 = 1711.13 ( giả sử tất cả các bản ghi là bản ghi tự nhiên để đơn giản)
Sử dụng bất kỳ ngôn ngữ lập trình hiện có, chiến thắng điểm thấp nhất
Chỉnh sửa: Vấn đề đã được thay đổi từ việc tìm '1000000 số nguyên tố đầu tiên' thành 'số nguyên tố đầu tiên' vì nhầm lẫn về 'n' trong O (f (n)) là gì, n là số lượng số nguyên tố bạn tìm thấy (tìm số nguyên tố là vấn đề ở đây và sự phức tạp của vấn đề phụ thuộc vào số lượng các số nguyên tố được tìm thấy)
Lưu ý: để làm rõ một số nhầm lẫn về độ phức tạp, nếu 'n' là số nguyên tố bạn tìm thấy và 'N' là số nguyên tố thứ n được tìm thấy, độ phức tạp của n là và N không tương đương, ví dụ O (f (n))! = O (f (N)) as, f (N)! = Constant * f (n) và N! = Constant * n, bởi vì chúng ta biết rằng hàm số thứ n không phải là tuyến tính, mặc dù chúng ta đã tìm thấy 'n' độ phức tạp của số nguyên tố phải dễ dàng biểu thị theo 'n'.
Như Kibbee đã chỉ ra, bạn có thể truy cập trang web này để xác minh các giải pháp của mình ( ở đây , là danh sách tài liệu google cũ)
Vui lòng bao gồm những điều này trong giải pháp của bạn -
chương trình của bạn có phức tạp gì (bao gồm phân tích cơ bản nếu không tầm thường)
độ dài ký tự của mã
điểm tính toán cuối cùng
Đây là Câu hỏi CodeGolf đầu tiên của tôi vì vậy, nếu có sai sót hoặc kẽ hở trong các quy tắc trên, vui lòng chỉ ra chúng.
1[\p:i.78498
câu trả lời của tôi cho đây sẽ là 1[\p:i.1000000
. Ngay cả khi giả sử rằng thuật toán nguyên tố nội bộ của J là O (n ^ 2), điểm của tôi sẽ vẫn chỉ là 196.
n
số lượng số nguyên tố hay số nguyên tố tối đa và mọi người đều bỏ qua thực tế rằng việc thêm các số trong phạm vi 0..n
là O(logn)
, và phép nhân và phép chia thậm chí còn đắt hơn. Tôi đề nghị bạn nên đưa ra một số thuật toán ví dụ cùng với độ phức tạp đúng của họ.
O-tilde(k^6)
. Điều này dẫn đến hàm ý rằng bất kỳ ai tuyên bố thời gian hoạt động tốt hơn O-tilde(n ln n (ln(n ln n))^6)
đã hiểu sai một phần của vấn đề; và cho câu hỏi về mức O-tilde
độ phức tạp nên được xử lý trong việc tính điểm.