开发者社区> 陈国林> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

hdu 2199 Can you solve this equation?

简介: 点击打开hdu2199 思路: 二分 分析: 1 求题目给定的等式是否有[0,100]之间的解 2 8*x^4 + 7*x^3 + 2*x^2 + 3*x + 6是一个单调递增的函数,那么求解的话我们利用二分的思想 3 注意判断没有解的...
+关注继续查看

点击打开hdu2199

思路: 二分
分析:
1 求题目给定的等式是否有[0,100]之间的解
2 8*x^4 + 7*x^3 + 2*x^2 + 3*x + 6是一个单调递增的函数,那么求解的话我们利用二分的思想
3 注意判断没有解的情况就是Y < 0 或者 Y大于x为100的时候等式的值

代码:

#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;

const double eps = 1e-10;

double Pow(double x , int y){
    double sum = 1;
    for(int i = 0 ; i < y ; i++)
        sum *= x;
    return sum;
}

void solve(double n){
    double left = 0.0;
    double right = 100.0;
    double mid;
    double sum = 8*Pow(100,4)+7*Pow(100,3)+2*Pow(100,2)+300;
    n -= 6;
    if(n < 0 || n > sum){
        puts("No solution!");
        return;
    }
    while(right-left > eps){
         mid = (left+right)/2.0; 
         sum = 8*Pow(mid,4)+7*Pow(mid,3)+2*Pow(mid,2)+
             3*mid;
         if(sum - n > eps){
             right = mid;  
         } 
         else{
             left = mid; 
         }
    }
    printf("%0.4lf\n" , left);
}

int main(){
    int cas;
    double n;
    scanf("%d" , &cas);
    while(cas--){
         scanf("%lf" , &n); 
         solve(n);
    }
    return 0;
}


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【Example】C++ 回调函数及 std::function 与 std::bind
回调函数是做为参数传递的一种函数,在早期C样式编程当中,回调函数必须依赖函数指针来实现。 而后的C++语言当中,又引入了 std::function 与 std::bind 来配合进行回调函数实现。 标准库中有大量函数应用到了回调函数,其中 std::sort 就是一个经典例子。
172 0
大盘点: KubeCon EU 2019 应用管理领域的新看点!
KubeCon EU 2019 刚刚在巴塞罗那拉下帷幕,来自阿里巴巴经济体的讲师团,在大会上分享了互联网场景下规模化 Kubernetes 集群的各项落地经验和教训。所谓“独行速而众行远”,从不断发展壮大的社区中,我们看到越来越多的人拥抱开源,往标准演进,搭上了这趟开往云原生的高速列车。
12466 0
Can't locate ExtUtils/MakeMaker.pm in @INC
<p style="font-size:14px; margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:tahoma,helvetica,arial; line-height:21px"> <span style="color:#454545">[root@280506 F
1726 0
OpenGL ES From the Ground Up, Part 4: Let There Be Light!
FRIDAY, MAY 1, 2009 OpenGL ES From the Ground Up, Part 4: Let There Be Light! Continuing on with OpenGL ES for the iPhone, let's talk about light.
1182 0
JAVA CDI 学习(4) - @Alternative/@Default/@Any & Extension
前面几节学习到的CDI内容,基本上都是hard-code,以硬编码的方式在代码里指定注入类型,这并非依赖注入的本意,依赖注入的优势之一在于“解耦”,这一节我们将学习如何利用配置来动态注入的类型及属性初始化。
784 0
+关注
陈国林
曾任职于阿里巴巴,现就职于美图,专业搬砖100年~
723
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载