Công việc của bạn là chuyển đổi số thập phân trở lại thành tổng căn bậc hai của số nguyên. Kết quả phải có độ chính xác của ít nhất 6 chữ số thập phân có ý nghĩa.
Đầu vào :
Một số chỉ số căn bậc hai và số thập phân chỉ số gần đúng.
Ví dụ đầu vào:
2 3.414213562373095
Đầu ra : Các số nguyên được phân tách bằng khoảng trắng, khi căn bậc hai và được thêm vào, xấp xỉ số thập phân ban đầu chính xác đến ít nhất 6 chữ số thập phân có nghĩa.
Số không được phép trong giải pháp.
Nếu có nhiều giải pháp, bạn chỉ phải in một.
Ví dụ đầu ra (theo thứ tự bất kỳ):
4 2
Điều này hoạt động bởi vì Math.sqrt(4) + Math.sqrt(2) == 3.414213562373095
.
Đây là mã golf. Mã ngắn nhất (có thưởng tùy chọn) sẽ thắng!
Luôn luôn có một giải pháp nhưng -10 nếu chương trình của bạn in "Không" khi không có giải pháp nào có số nguyên. Ngoài ra, -10 nếu chương trình của bạn in tất cả các giải pháp (được phân tách bằng dòng mới hoặc dấu chấm phẩy hoặc bất cứ thứ gì) thay vì chỉ một.
Các trường hợp thử nghiệm:
3 7.923668178593959 --> 6 7 8
2 2.8284271247461903 --> 2 2
5 5.0 --> 1 1 1 1 1
5 13.0 --> 4 4 9 9 9 --> 81 1 1 1 1 --> 36 9 4 1 1 etc. [print any, but print all for the "all solutions bonus"]
Và có, chương trình của bạn phải hoàn thành trong thời gian hữu hạn bằng cách sử dụng bộ nhớ hữu hạn trên bất kỳ máy hợp lý nào. Nó không thể hoạt động "trên lý thuyết", bạn phải có khả năng thực sự kiểm tra nó.
6 7 8
cho phần thưởng thứ hai không?