我是编程新手(Python 是我的第一语言),但我喜欢设计算法。我目前正在研究一个方程组(整数),我找不到任何参考资料来解决我的特定问题。
让我解释。
我有一个方程式(如果你愿意,可以做一个测试):
raw_input == [(90*x + a) * y] + z
其中 a 是某个常数。
我的问题是,变量 z 的计数方式与斐波那契数列非常相似,变量 x 是 z 的步长。所以我的意思是(对于斐波那契数列),在 z 序列的第一项,x = 0,在 z 序列的第二项,x = 1。我需要求解 y。
确定z的具体过程如下
where c and d are constants:
#at x = 0
temp = (c+(90*x)) * (d+(90*x))
temp/90 = z(0)
#at x = 1
new_temp = (c+(90*x)) * (d + (90*x))
new_temp/90 = z(1)
#for all the rest of the values of z (and x), use:
j = z(@ x=1) - z(@ x=0)
k = j + 180
l = z(@ x=1) + k
print "z(@ x=1) - z(@ x=0) = j"
print "j + 180 = k"
print "k + z(1) = l"
repeat until z > raw_input
this creates the spread of z values by the relation:
j = z(@ x=n) - z(@ x=n-1)
k = j + 180
l = k + z(@ x = n)
我需要扫描(跳过)z < x 的值以测试 y 的整数解的条件。
这看起来可能吗?