HDUOJ-----1098 Ignatius's puzzle
Ignatius's puzzle
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5035 Accepted Submission(s): 3426
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
这道题,如果能够在高中的时候,很定能够求出来的..
对于 F(x)=5*x^13+13*x^5+k*a*x;
数学归纳如下: 当x=1时,F(1)=5+13+k*a (此时需要找一个a使得,条件成立)。
假设 当x=k时,其成立;
当.x=k+1时,也应当成立。但实际上5*(x+1)^13+13*(x+1)^5+k*a*(x+1);
展开之后 0 13
5*(C *x^13.........C *x^0)+13*(.....同前头.....)+k*a*x + k*a ;
13 13
最后我5*x^13+13*x^5+kax +5+13+ka +后面部分(由于是65的倍数,就不讲啦)....由于当x=xs十,条件是成立的....所以最后只需要将(13+5+ka)%65
等于0就行了!!而a必须小于65,不然就没有意义了!!试想a如果是65的倍数的话....那么F(x+1)处,便放到后头省掉了...
由此就不难写出代码了!!
代码如下:
1 #include<iostream>
2 using namespace std;
3 int main( void )
4 {
5 int k,a;
6 while(cin>>k)
7 {
8 a=0;
9 for(int i=1;i<65;i++)
10 {
11 if((18+i*k)%65==0)
12 { a=i;
13 break;
14 }
15 }
16 if(a)cout<<a<<endl;
17 else cout<<"no"<<endl;
18
19 }
20 return 0;
21 }
- 数据结构与算法C#版笔记--排序(Sort)-上
- android 模拟器安装二三事
- 2017小程序发展大事件和未来3大趋势分析
- [复习]The C Programming Language 2nd 习题集(1.1-1.10)
- 数据结构C#版笔记--啥夫曼树(Huffman Tree)与啥夫曼编码(Huffman Encoding)
- “单播”、“组播”和“多播”
- flash player10.1 + FMS4中的p2p功能
- fms4 p2p:图片分享
- 老域名新用的优缺点分析
- 不用临时变量,交换二个整型变量的值
- monoTouch开发(1):win7 + vmware下安装mac os
- 数据结构C#版笔记--队列(Quene)
- 数据结构C#版笔记--堆栈(Stack)
- MySQL基础入门-第一课 新建数据库(linux版本)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 算法集锦(21) | 自动驾驶 |汽车转向角控制算法
- Java压缩/解压缩字符串
- 凉经算法题反思 | 单调栈与DP二分法
- 终于有人把Docker讲清楚了!
- 飞天茅台超卖事故:Redis分布式锁请慎用!
- 算法集锦(24) | 自动驾驶 |高速公路行驶路径规划算法
- 【自动驾驶专题】|小白都会玩的自动驾驶算法
- 算法基础(6)| 语音识别DTW算法小讲
- Selenium设置浏览器为手机模式自定义大小
- 如何在Jetson nano上同时编译TensorRT与Paddle Lite框架
- 一文概览无监督聚类算法有多少 | 算法基础(10)
- 算法集锦(28)| 智能医疗 | 血液细胞分类算法
- 基于飞桨复现 CVPR2018 Relation Net的全程解析
- 如何将DB2数据库转换成Oracle数据库,这一篇告诉你
- MySQL 8.0 安装部署3个注意事项