Mục tiêu rất đơn giản: Đưa ra một giải pháp thực khác xcho phương trình sin(x) = -mx, đầu vào đã cho m, với số lượng byte ít nhất.
Thông số kỹ thuật:
- Câu trả lời của bạn phải chính xác đến 3 con số quan trọng.
- Bạn có thể xuất ra bất kỳ giải pháp thực tế nào ngoài giải pháp tầm thường
x=0. Bạn có thể giả sửmlà có ít nhất một giải pháp tồn tại. Bạn cũng có thể giả địnhm!=0.
Một giải pháp python tối ưu rõ ràng bằng cách sử dụng độ dốc giảm dần :
from math import *
from random import *
a=x=0.001
m = 5.
def dE(x):return 2*(sin(x)+m*x+1)*(cos(x)+m)
for i in xrange(1000): x-=dE(x)*a
print x
Các trường hợp thử nghiệm
-0.25 -> ±2.4746
-0.1 -> ±2.8523 or ±7.0682 or ±8.4232
0.2 -> ±4.1046 or ±4.9063
x=0là một giải pháp tầm thường. Bạn nên chỉ định giải pháp nào bạn muốn.
m=0có giải pháp ( x=kπcho số nguyên k). Các giá trị mkhông có giải pháp thực tế không tầm thường là những giải pháp quá xa vời 0.
agiải quyếtsin(x)=-ax. Xin đừng nói "bạn phải thực sự tính toán", vì các yêu cầu như thế quá mơ hồ để có thể làm việc.