二分法习题HDU2199
AC代码
:
#include<iostream>
#include<cmath>
using namespace std;
double y;
double f(double n)
{
return 8*pow(n,4)+7*pow(n,3)+2*pow(n,2)+3*n+6;
}
double find()
{
double mid;
double a,b;
a=0;b=100;
while(b-a>1e-6)
{
mid=(a+b)/2;
if(f(mid)<y)
a=mid+1e-7;
else
b=mid-1e-7;
}
return (a+b)/2.0;
}
int main()
{
int t;
cin>>t;
while(t--)
{
cin>>y;
if(f(0)<=y&&y<=f(100))
printf("%.4lf\n",find());
else
cout<<"No solution!\n";
}
return 0;}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/*
在这里一共使用了两个函数,一个用来保存函数的计算结果,这个是值得自己以后参考的东西,尽量自己去模仿、
还有一个就是本题关键的二分法的算法了,下面来仔细分析分析
double find()
{
double mid;
double a,b;//关键是有三个指针起到一个指向作用
a=0;b=100;//开始的指针初始化
while(b-a>1e-6)//这个是程序停止运行的一个必须满足的条件
{
mid=(a+b)/2;
if(f(mid)<y)
a=mid+1e-7;
else
b=mid-1e-7;//取中间值,但是还是有变化的,这个也是非常主要的,没有处理好可能就会陷入一个死循环
}
return (a+b)/2.0;
}
*/
二分法习题HDU2199的更多相关文章
- 二分法经典习题——HDU1969
#include <iostream>#include <cmath>#include <iomanip>using namespace std; double p ...
- 算法(第四版)C# 习题题解——2.3
写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更为方便的版本见:http ...
- C语言两种查找方式(分块查找,二分法)
二分法(必须要保证数据是有序排列的): 分块查找(数据有如下特点:块间有序,块内无序):
- poj3122-Pie(二分法+贪心思想)
一,题意: 有f+1个人(包括自己),n块披萨pie,给你每块pie的半径,要你公平的把尽可能多的pie分给每一个人 而且每个人得到的pie来自一个pie,不能拼凑,多余的边角丢掉.二,思路: 1,输 ...
- Sharepoint学习笔记—习题系列--70-576习题解析 --索引目录
Sharepoint学习笔记—习题系列--70-576习题解析 为便于查阅,这里整理并列出了70-576习题解析系列的所有问题,有些内容可能会在以后更新. 需要事先申明的是: 1. ...
- 二分法&三分法
ural History Exam 二分 #include <iostream> #include <cstdlib> using namespace std; //二分 ...
- 《python核心编》程课后习题——第三章
核心编程课后习题——第三章 3-1 由于Python是动态的,解释性的语言,对象的类型和内存都是运行时确定的,所以无需再使用之前对变量名和变量类型进行申明 3-2原因同上,Python的类型检查是在运 ...
- [No000087]Linq排序,SortedList排序,二分法排序性能比较
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; ...
- [PHP]基本排序(冒泡排序、快速排序、选择排序、插入排序、二分法排序)
冒泡排序: function bubbleSort($array){ $len=count($array); //该层循环控制 需要冒泡的轮数 for($i=1;$i<$len;$i++){ / ...
随机推荐
- hadoop 完全分布式
转自:http://blog.itpub.net/26613085/viewspace-1219710/ 1.JDK安装和SSH互信(略过) 2.各节点IP和hostname如下(各节点需配置) [h ...
- push类型消息中间件-消息服务端(三)
1.连接管理 网络架构原来是使用是自己开发的网络框架Gecko,Gecko默认为每个网络连接分配64KB的内存,支持1000个网络连接,就需要大概64MB的内存.后来采用Netty重构了网络服务层. ...
- C# cookies
谷歌浏览器- 工具---internet选项---常规---浏览历史记录---设置 cookie和网站数据 C:\Documents and Settings\Administrator\Local ...
- 生成扫描二维码下载app的二维码的方法
进入APP store苹果应用程序商店,根据分类找到你要生成二维码的APP,然后在浏览器连接里找到ID后的一串数字就是APP的应用ID了. 安卓系统的appid 在电脑浏览器中打开应用宝官网,http ...
- .parents() 与 .parent()对比
今天使用jQuery时候需要用到parents()方法,css()方法的使用 现在只是知道可以取到父级DOM节点,研究是否可以通过选取class名或者id名进行选取. 取到父级DOM节点 $(e.sr ...
- java 视频中截图
package com.sun.test; import java.io.File; import java.util.List; public class CreatePh { //public s ...
- XML 树结构
XML 树结构 XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶". 一个 XML 文档实例 XML 文档使用简单的具有自我描述性的语法: &l ...
- 大数加法(STL list)
#include<iostream> #include<list> #include<string> using namespace std; int main() ...
- 异常处理try-catch-finally笔记
当程序发生异常时,我们期望:返回到一种安全状态,并能够让用户执行一些其他的命令:或者 允许用户保存所有操作的结果,并以适当的方式终止程序. 异常处理机制:程序的执行过程中如果出现异常,会自动生成一个异 ...
- openwrt生成备份文件
生成备份文件时所使用的脚本中调用的命令为sysgrade local image_tmp = "/tmp/firmware.img" local backup_cmd = & ...