HDU 1098 数学归纳法

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1098

思路:数学归纳法

    观察可发现规律:13*5=65,并且  f(x)=5*x^13+13*x^5+k*a*x  中5乘以x的13次方,13乘以x的5次方,意向到按下述方法做

(1)f(0)=0 满足条件

(2)假设当取x时,结论成立。

     ,此时  f(x)%65=0

(3)当取 x+1 时,

 

展开得:

其中:包含的项,分别和其前面的5、13相乘,均可被65整除,而剩余的项如下所示:

其中:由(2)可知可被65整除

所以只要保证:(5+13+k*a )%65  =0  即可

又因为:18%65=18,所以上式可化为:18+(k*a)%65=0,所以只需遍历a从0到64即可


代码如下:

#include

using namespace std;

int main()
{
    int k,flag,a;
    while(scanf("%d",&k)!=EOF)
    {
        flag=0;
        for(a=0;a<=64;a++)
        {
            if((18+k*a)%65==0)
            {
                flag=1;
                break;
            }
        }
        if(flag==0)
            printf("no\n");
        else
            printf("%d\n",a);
    }
    return 0;
}


你可能感兴趣的:(数学问题)