YT14-HDU-三分查詢求F(x)的最小值
Problem Description
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.
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
2 100 200
Sample Output
-74.4291 -178.8534
程式碼如下:
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
double Equ(double x,double Y)
{
return 6*pow(x,7)+8*pow(x,6)+7*pow(x,3)+5*pow(x,2)-Y*x; //返回F(x)
}
int main()
{
int T,i;
double Y,low,high,t1,t2;
cin>>T;
while (T--)
{
cin>>Y;
low=0,high=100;
for (i=1;i<=200;i++) //確定三分查詢的次數
{
t1=(low+high)/2;
t2=(t1+high)/2; //將0到100分為3份,逐漸縮小查詢範圍
if (Equ(t1,Y)<Equ(t2,Y))
high=t2;
else
low=t1;
}
cout<<setiosflags(ios::fixed)<<setprecision(4)<<Equ(t1,Y)<<endl; //控制輸出格式
}
return 0;
}
解題思路:
題目大意是輸入Y,求F(x)在x屬於【0,100】間的最小值。
用的是三分查詢,二分查詢也可以,但由於不確定F(x)在0到100間的單調性,所以還是三分查詢更適用。
相關文章
- Python 查詢字典中最大最小值的keyPython
- 【譯】Swift演算法俱樂部-查詢最大/最小值Swift演算法
- 演算法學習-查詢旋轉陣列的最小值演算法陣列
- java陣列回顧---線性查詢最大值最小值---二分查詢Java陣列
- 隱含引數的查詢x$ksppi,x$ksppcv
- ACM-二分-三分查詢筆記ACM筆記
- YT14-HDU-求N^N的個位數(暴力破解版)
- mysql求交集:UNION ALL合併查詢,inner join內連線查詢,IN/EXISTS子查詢MySql
- elasticsearch之單請求多查詢Elasticsearch
- 求多階BOM查詢程式碼
- Vue請求介面查詢條件拼接Vue
- 2419 求最大值和最小值
- SQL查詢的:子查詢和多表查詢SQL
- Vert.x Future 解決複雜查詢
- 演算法求陣列中的最大值最小值演算法陣列
- ElasticSearch 7.X版本19個常用的查詢語句Elasticsearch
- Django框架:8、聚合查詢、分組查詢、F與Q查詢、ORM查詢最佳化、ORM事務操作、ORM常用欄位型別、ORM常用欄位引數Django框架ORM型別
- 查詢排序二叉樹的最小值,最大值,Next指標,並逆序列印排序二叉樹指標
- group by,having查詢 ”每**“的查詢
- 每日百億查詢請求,咋敢玩可觀測性的呢?
- 求陣列之和,最小值,最大值,平均值陣列
- 每天一題(2)--旋轉陣列求最小值陣列
- JavaScript 專題之如何求陣列的最大值和最小值JavaScript陣列
- 3516 求n個整數的最小值 迴圈結構
- ES[7.6.x]學習筆記(十)聚合查詢筆記
- Elasticsearch中的Term查詢和全文查詢Elasticsearch
- Access查詢實現Mysql的 limit 查詢MySqlMIT
- 查詢之折半查詢
- mysql-分組查詢-子查詢-連線查詢-組合查詢MySql
- SSH:hiberate實現資料的查詢(單查詢和全查詢)
- 需要的查詢
- 回閃查詢查詢刪除的資料
- 複雜查詢—子查詢
- 查詢——二分查詢
- 子查詢-表子查詢
- 查詢(1)--靜態查詢
- 查詢(2)--動態查詢
- 求各位前輩幫忙看看連表查詢字首問題