เป้าหมายคือง่าย ๆ : ส่งออกวิธีแก้ปัญหาที่ไม่ใช่ศูนย์จริงxกับสมการที่sin(x) = -mxได้รับการป้อนข้อมูลmในจำนวนน้อยที่สุดของไบต์
ข้อมูลจำเพาะ:
- คำตอบของคุณจะต้องถูกต้องถึง 3 ตัวเลขที่สำคัญ
x=0คุณอาจจะส่งออกทางออกที่แท้จริงอื่นใดนอกเหนือจากการแก้ปัญหาที่น่ารำคาญ คุณสามารถสันนิษฐานmได้ว่ามีทางออกอย่างน้อยหนึ่งรายการm!=0นอกจากนี้คุณยังอาจคิด
เห็นได้ชัดว่าวิธีการแก้ปัญหาหลาม suboptimal ใช้เชื้อสายลาด :
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
กรณีทดสอบ
-0.25 -> ±2.4746
-0.1 -> ±2.8523 or ±7.0682 or ±8.4232
0.2 -> ±4.1046 or ±4.9063
x=0เป็นวิธีแก้ปัญหาเล็กน้อย คุณควรระบุโซลูชันที่คุณต้องการ
m=0มีวิธีแก้ปัญหา ( x=kπสำหรับจำนวนเต็มk) ค่าของที่ไม่ได้มีที่ไม่น่ารำคาญแก้ปัญหาที่แท้จริงเป็นผู้ที่อยู่ห่างไกลเกินไปจากm 0
asin(x)=-axโปรดอย่าพูดว่า "คุณต้องคำนวณจริง" เนื่องจากข้อกำหนดเช่นนั้นคลุมเครือเกินกว่าจะทำงานได้