목표는 간단합니다. input이 주어진 경우 가장 적은 바이트 수로 x방정식에 0이 아닌 실제 솔루션 을 출력 합니다.sin(x) = -mxm
명세서:
- 답은 유효 숫자 3 자리까지 정확해야합니다.
- 사소한 솔루션 이외의 실제 솔루션을 출력 할 수 있습니다
x=0.m하나 이상의 솔루션이 존재 한다고 가정 할 수 있습니다. 당신은 또한 가정 할 수 있습니다m!=0.
그래디언트 디센트를 사용하는 명백히 차선책의 파이썬 솔루션 :
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
또한
—
xnor
x=0사소한 해결책입니다. 원하는 솔루션을 지정해야합니다.
0이 아닌 솔루션을 보장하려면 m에 대한 경계가 필요합니다.
—
xnor
m=0솔루션 ( x=kπinteger k)이 있습니다. m사소한 실제 솔루션이없는 값 은 너무 멀리 떨어져 있습니다 0.
실제 솔루션 만 찾고 있습니까? 아니면 복잡한 솔루션도 허용됩니까?
—
마일
a해결하기 위해 입력 매개 변수를 포함시키는 것이 좋습니다sin(x)=-ax. "실제로 계산해야합니다"라고 말하지 마십시오. 요구 사항이 너무 모호하여 작동하지 않습니다.