码迷,mamicode.com
首页 > 其他好文 > 详细

Ignatius's puzzle

时间:2015-02-20 09:48:52      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

Ignatius‘s puzzle

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 6948    Accepted Submission(s): 4797


Problem Description
Ignatius is poor at math,he falls across a puzzle problem,so he has no choice but to appeal to Eddy. this problem describes that:f(x)=5*x^13+13*x^5+k*a*x,input a nonegative integer k(k<10000),to find the minimal nonegative integer a,make the arbitrary integer x ,65|f(x)if
no exists that a,then print "no".

 

Input
The input contains several test cases. Each test case consists of a nonegative integer k, More details in the Sample Input.
 

Output
The output contains a string "no",if you can‘t find a,or you should output a line contains the a.More details in the Sample Output.
 

Sample Input
11 100 9999
 

Sample Output
22 no 43
 

Author
eddy
思路:这个题有很多地方要回顾的,
数学归纳法,二项式定理
(a+b)n次方=C(n,0)a(n次方)+C(n,1)a(n-1次方)b(1次方)+…+C(n,r)a(n-r次方)b(r次方)+…+C(n,n)b(n次方)(n∈N*) 
http://blog.csdn.net/zcy20121105/article/details/7854926 写的不错,可以参考一下……
#include<iostream>
using namespace std;
int main()
{
    int k,a,i;
    while(scanf("%d",&k)!=EOF)
    {
        int flag=0;
        for(i=0;i<=10000;i++)
        {
            if((18+k*i)%65==0)
            {
                a=i;
                flag=1;
                break;
            }
        }
        if(flag==0)
            cout<<"no"<<endl;
        else
            cout<<a<<endl;
    }
    return 0;
}


Ignatius's puzzle

标签:

原文地址:http://blog.csdn.net/zuguodexiaoguoabc/article/details/43883103

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!