求最小值
来源:互联网 发布:js iframe 编辑:程序博客网 时间:2024/05/19 14:36
题意:对于函数F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x,给定一个y值,求当x在1~100时F(x)的最小值。
思路:先对F(x)求导,可以看出导数单调,求出x取何值时导数为0,则该x就是函数最小时x的取值。用二分法查找该x。
感悟:其实应该所做这样的问题,开阔一下思维,有些题看起来很简单,但你用的方法却不一定是最好的,看来简单题也有它的学问在里面,而我最大的感悟就是,有时候模板不一定最优,虽然能及很所算法,并灵活运用的人已经可以称作大神,但我更佩服做每道题都动脑筋寻找最优答案的人。那就努力打好基础吧,然后做一个思维活跃的人。
AC代码:
#include<iostream>#include<math.h>#include<iomanip>using namespace std;double f (double x,double y){ return 42*pow(x,6)+48*pow(x,5)+21*pow(x,2)+10*x-y;}double F(double x ,double y){ return 6*pow(x,7)+8*pow(x,6)+7*pow(x,3)+5*pow(x,2)-x*y;}int main(){ int t; double a,m,l,h; cin>>t; while (t--) { cin>>a; l=0;h=100; m=(l+h)/2; while ( fabs (f(m,a))>0.00001) { if (f(m,a)>0) h=m; else l=m; m=(l+h)/2; } cout<<fixed<<setprecision(4)<<F(m,a)<<endl; } return 0;}
0 0
- 求最小值
- 求最小值
- 分组求最大最小值
- 栈求最小值
- 求最大值与最小值
- 求最大值和最小值
- 求最大值和最小值
- 栈求最小值
- 求二维数组最小值
- 求最大值最小值
- 求最大值最小值
- 求n的最小值
- 求函数的最小值
- 求最大最小值
- 求最大最小值
- c++ 求最小值随笔
- 旋转数组求最小值
- 汇编求数组最小值
- 二叉查找树BST----java实现
- 安卓之appwibget
- nyoj-471 好多的树[容斥定理]
- 快速排序
- 设计模式-建造者模式(Go语言描述)
- 求最小值
- Retrofit 2.0 网络访问框架(特别火)
- Struts2之Crud综合实例
- 全局Dialog动画--更改系统定义的Dialog动画
- Qt setWindowFlags的使用
- Application和Session对象
- 【ATF】庄卓然(南天):掌上精彩-连接过去与未来
- 《战拖有术》书评
- hdu 2063(二分匹配)