魔方吧·中文魔方俱乐部
标题:
关于确定多项式的难题
[打印本页]
作者:
yang_bigarm
时间:
2009-8-10 21:27:52
标题:
关于确定多项式的难题
两个希腊人alpha和zeta在玩一个游戏,其中zeta心中事先想好了一个多项式f(x),
alpha每次说出一个数字a,zeta就把这个数字代入多项式里,报出f(a)的值。
请问alpha最少提问几次,就可以完全确定这个多项式。
注意:古希腊的时候人们通常研究的是系数为正整数的多项式。
作者:
superacid
时间:
2009-8-10 21:35:00
多项式的次数不知道吗?
作者:
Osullivan
时间:
2009-8-10 21:50:16
这次数不知道,貌似无法确定吧~~~
作者:
yang_bigarm
时间:
2009-8-10 21:51:41
原帖由
superacid
于 2009-8-10 21:35 发表
多项式的次数不知道吗?
是的,不知道次数,想一想如何确定?
作者:
今夜微凉
时间:
2009-8-10 22:07:18
我只知道,给0,则得出常数项~原来还有条件~系数是正整数~那可能好办一些~
[
本帖最后由 今夜微凉 于 2009-8-10 22:09 编辑
]
作者:
lulijie
时间:
2009-8-11 09:52:46
只需要1次就可确定这个整系数多项式。
假设所有系数中最大的数为n位数,那么可以用10^n或更大的数来检验即可。
比如 12x^4+98x^2+56x+3
可取100,值为1200985603
将这个值每两位分隔得 12,00,98,56,03
多项式就是 12x^4+98x^2+56x+3
如果最大的系数不清楚多大,可以取尽可能大的数就行,比如取10^n,n取尽量大就行。
作者:
东莞的8
时间:
2009-8-11 10:06:18
通项是不是类似这样?如果是不话能否用下面的方法进行:
f(x)=a+bx+cx^2+dx^3+~~~~~~
x取0的话可以得出常数项
再x分别取1,2,3~~~为1时则f(x)=a+b+c~~~ 设等于K,这样的话最多K次就可以知道项数。然后再取x为2时则f(x)=a+2b+4c~~~ 最多K次,可以约去前面的K-1项,求出最后一个最高次项的系数,再类推.
请楼主赐教
作者:
今夜微凉
时间:
2009-8-11 10:10:04
那取10不就好了嘛~~?
作者:
superacid
时间:
2009-8-11 14:56:12
你在不知道此数的情况下只有最佳策略,没有最少次数。
作者:
lulijie
时间:
2009-8-11 21:08:42
如果非得认为整系数最大值可以无限大,最高次幂可以选的无限大,那么讨论本题就没有意义了。
我估计楼主的本意就是让你取一个无限大的数,就可最少一次就解决问题。
--------------------------------------------------------------------------
如果要让题目出的精确些,可以改成这样:
两个希腊人alpha和zeta在玩一个游戏,其中zeta心中事先想好了一个整系数多项式f(x),
系数的最大值为m,
alpha每次说出一个数字a,zeta就把这个数字代入多项式里,报出f(a)的值。
请问alpha最少提问几次,就可以完全确定这个多项式。
-------------------------------------
答案是最少提问一次:任意选一个比m大的数,根据f(m)的值就可确定这个整系数多项式。
作者:
yang_bigarm
时间:
2009-8-12 00:09:09
lulijie的答案距离正确答案还查一点距离,显然不会是一次提问就能确定的吧。
不要老改我的题目,我说zeta想好了一个多项式,那么我们可以认为他已经事先写在纸上了。
作者:
Cielo
时间:
2009-8-12 11:35:19
呵呵既然这样那么第一次令 a=1 就可以得出系数的最大值了
作者:
yang_bigarm
时间:
2009-8-12 11:48:29
cielo和lulijie两人的想法合在一起就是正确答案啦。
作者:
ggglgq
时间:
2009-8-12 12:03:48
实际上对于整系数多项式,令 a = π(任意一个“超越数”),便可以搞定 f(x) 。
注:
只需
一
次
!
而且 不必限定 f(x) 的 最高次幂
! 这时只需要“高精度计算机”,
便可以由 f(π) 的值 唯一 确定 整系数多项式 f(x) 。
作者:
lulijie
时间:
2009-8-12 12:51:21
哈哈,先取1,然后取f(1)或比f(1)大的任何数,两次必能成功。
作者:
lulijie
时间:
2009-8-12 14:27:21
突然想到 第一次取1,知道了f(1)的值,还是不知道最大系数的绝对值。
这样的话,假设你能通过n次成功获得这个多项式。那么可以证明你无法通过n次成功获得这个多项式。
假设这n次你的取值分别是a1,a2,a3......an
那么我的多项式如果是 (x-a1)(x-a2)(x-a3)......(x-an)(......)
那么你的n次取值给出的结果都等于0,所以无法获得系数绝对值的最大值。
所以你可能无论多少次也无法成功获得这个多项式的准确表达式。
------------------------------------------------------
所以我觉得楼主的题目要成立的话,至少需要增加一个条件:
事先给定所有系数的绝对值的最大值。 那么只要1次就行。
或者
所有的系数都是非负整数。 那么需要2次才能完成任务。
作者:
yang_bigarm
时间:
2009-8-13 08:43:08
题目的“注意”那个地方不是写得很清楚了吗?系数为正整数的多项式。
如果没有注意的这个条件,用拉格朗日插值多项式来做。
[
本帖最后由 yang_bigarm 于 2009-8-13 08:46 编辑
]
欢迎光临 魔方吧·中文魔方俱乐部 (http://bbs.mf8-china.com/)
Powered by Discuz! X2