CSU-ACM2017暑期训练5-三分 A
来源:互联网 发布:数据库分析工具 编辑:程序博客网 时间:2024/05/01 23:08
题目:
Now, here is a fuction:
F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100)
Can you find the minimum value when x is between 0 and 100. Input The first line of the input contains an integer T(1<=T<=100) which means the number of test cases. Then T lines follow, each line has only one real numbers Y.(0 < Y <1e10) Output Just the minimum value (accurate up to 4 decimal places),when x is between 0 and 100. Sample Input 2100200
Sample Output -74.4291 -178.8534 题目大意:给你一个函数 F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100) 和y,求x在0到100时F(x)的最小值。 思路:三分用来求单峰函数极值的最基本应用 代码: #include<cstdio>#include<cstring>#include<algorithm>#include<iostream>#include<string>#include<vector>#include<stack>#include<bitset>#include<cstdlib>#include<cmath>#include<set>#include<list>#include<deque>#include<map>#include<queue>using namespace std;typedef long long ll;const double PI = acos(-1.0);const double eps = 1e-6;const int INF = 1000000000;const int maxn = 100;int T;double mid,midmid;double y;double cal(double x){ return ((((((((6*x)+8)*x+0)*x+0)*x+7)*x+5)*x-y)*x);}int main(){ scanf("%d",&T);while(T--) { scanf("%lf",&y); double l=0,r=100.0; while(r-l>eps) { mid=(l+r)/2.0; midmid=(mid+r)/2.0; if(cal(mid)<cal(midmid)) { r=midmid; } else l=mid; } printf("%.4f\n",cal(l)); } return 0;}
2100200
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>#include<string>#include<vector>#include<stack>#include<bitset>#include<cstdlib>#include<cmath>#include<set>#include<list>#include<deque>#include<map>#include<queue>using namespace std;typedef long long ll;const double PI = acos(-1.0);const double eps = 1e-6;const int INF = 1000000000;const int maxn = 100;int T;double mid,midmid;double y;double cal(double x){ return ((((((((6*x)+8)*x+0)*x+0)*x+7)*x+5)*x-y)*x);}int main(){ scanf("%d",&T);while(T--) { scanf("%lf",&y); double l=0,r=100.0; while(r-l>eps) { mid=(l+r)/2.0; midmid=(mid+r)/2.0; if(cal(mid)<cal(midmid)) { r=midmid; } else l=mid; } printf("%.4f\n",cal(l)); } return 0;}
阅读全文
0 0
- CSU-ACM2017暑期训练5-三分 A
- CSU-ACM2017暑期训练5-三分 E
- CSU-ACM2017暑期训练5-三分 D
- CSU-ACM2017暑期训练5-三分 E
- CSU-ACM2017暑期训练1-Debug与STL A
- CSU-ACM2017暑期训练7-模拟&&贪心 A
- CSU-ACM2017暑期训练7-模拟&&贪心A
- CSU-ACM2017暑期训练16-树状数组 A
- CSU-ACM2017暑期训练3 J
- CSU-ACM2017暑期训练4-dfs D
- CSU-ACM2017暑期训练4-dfs E
- CSU-ACM2017暑期训练4-dfs F
- CSU-ACM2017暑期训练4-dfs G
- CSU-ACM2017暑期训练6-bfs C
- CSU-ACM2017暑期训练6-bfs I
- CSU-ACM2017暑期训练6-bfs H
- CSU-ACM2017暑期训练6-bfs G
- CSU-ACM2017暑期训练6-bfsH
- 使用MATLAB自带函数求解二次特征值问题
- C语言实现C++继承和多态
- 今日计划反馈
- LeetCode7 Reverse Integer
- 初步岭回归
- CSU-ACM2017暑期训练5-三分 A
- (七)linux下共享库开发的流程
- db2 sql
- js作用域
- [双连通分量]LA3523 Knights of the Round Table
- Uinux命令一
- jQuery选择器——属性过滤选择器
- 堆排序
- 学习笔记-面向对象思想