所以我有一篇关于复杂性理论问题的课程,我在NPTime复杂性课程中遇到了一些问题PRIMES。
到目前为止一切都很好。
抛出我的问题是提出用于计算(a ^ p)mod(b)的多项式时间算法的问题。它必须是输入大小的多项式(没有位)。
这是后一句话让我感到困惑。
这就是失去我的地方!当然,假设蛮力尝试(所有值在2和sqrt(n)之间),会给出2 ^ NoBits是指数吗?!
现在我不想要答案!这是我的课程,所以我不能要求这样做。我只想清楚“输入位数多项式”的含义。解释它就像你想要一个孩子;)
答案 0 :(得分:1)
您有3个号码,a
,p
和b
。每个都可以是任何尺寸。 1. 10. 123_456_789。没有限制。
当我们在base 2中写入它们时,每个都是一些位,然后是该位串。所以1,110,111010110111100110100010101.每一个都是一些位。 1,2,27。位数的总和是输入的总大小。 30。
您的算法应该足够有效,以至于存在一些多项式p(x)
,其中x
是输入中位数的总和,这是计算所需时间的上限。
请特别注意,您不希望将a
乘以p
次!