一元三次方程组求解 luogu P1024
首先,要明确题目信息,f(x1) * f(x2) < 0, 则一定存在实数根在区间(x1, x2)。且所有的根都在[-100, 100)之间。根与根的绝对值之差 >= 1
那么,我们是否可以找到所有的x1 和 x2 呢? 当然可以。
根的取值范围这么小 (每一个区间都枚举一次的话也只有200个区间),那么我们当然就愉快的枚举啊!
在 [-100, 100)的区间里面枚举符合条件的 x1, x2。然后再对该区间进行二分查找(二分赛高!)
#include <bits/stdc++.h>
using namespace std;
#define du double du a, b, c, d;
int now;
du ans; inline du cac(du x){ //x 对应的 f 的值
return a * x * x * x + b * x * x + c * x + d;
} inline void search(du l, du r){ if(now == )return;
if(r - l <= 0.001){//差这么小,已经可以说是相等了。直接输出
printf("%.2lf ", l);
now++;
return ;
}
du mid = l + (r - l) / ;
du ansl, ansr;
ansl = cac(l) * cac(mid);
ansr = cac(mid) * cac(r);
if(cac(r) == ){ //是否存在端点为根的情况?
printf("%.2lf ", r);
now++;
}
if(cac(mid) == ){
printf("%.2lf ", mid);
now++;
}
if(ansl < )
search(l, mid);//继续二分搜索, 注意不一定只有一个根
else if(ansr < )search(mid, r);
return;
} int main(){
freopen("count.in", "r", stdin);
freopen("count.out", "w", stdout);
cin >> a >> b >> c >> d;
for(du i = -100.0; i <= ; i++){
if(cac(i) * cac(i + ) <= )//枚举符合条件的区间
search(i, i + );
}
return ;
}
一元三次方程组求解 luogu P1024的更多相关文章
- luogu【P1024 一元三次方程求解】题解
题目描述 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差 ...
- [NOIP2001] 提高组 洛谷P1024 一元三次方程求解
题目描述 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差 ...
- P1024 [NOIP2001 提高组] 一元三次方程求解
题目描述 有形如:a x^3 + b x^2 + c x + d = 0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d均为实数),并约定该方程存在三个不同实根(根的范围在 -100至 ...
- 洛谷 [P1024]一元三次方程求解【二分答案】
题目链接:https://www.luogu.org/problemnew/show/P1024 题目描述 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b ...
- [NOIP提高&洛谷P1024]一元三次方程求解 题解(二分答案)
[NOIP提高&洛谷P1024]一元三次方程求解 Description 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d 均为实数),并约 ...
- 洛谷——P1024 一元三次方程求解
P1024 一元三次方程求解 题目描述 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-10 ...
- P1024 一元三次方程求解
P1024 一元三次方程求解 #include<cstdio> #include<iostream> #include<algorithm> using names ...
- 洛谷P1024 一元三次方程求解
P1024 一元三次方程求解 题目描述 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-10 ...
- 【洛谷P1024一元三次方程求解】
题目描述 有形如: ax3 + bx2 + cx1 + dx0 = 0 这样的一个一元三次方程.给出该方程中各项的系数( a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在 -100 ...
随机推荐
- Jenkins 构建 Jmeter 项目
1.启动 Jenkins(windows 版本) 2.新建自由风格的项目 定时任务 构建操作 安装 HTML Publisher 插件 构建后操作 最后保存构建,查看报告
- Centos7 搭建bind9.9
DNS服务器概述: DNS(Domain Name System),即域名系统. DNS服务器分为三种: 主域名服务器(Master Server).辅助域名服务器(Slave DNS).缓存服务器( ...
- 关于【MySQL 子查询——查询最大值】的补充说明
昨天在使用子查询查找最高分和最低分时遇上了一点问题,情况是这样的:如果找到的最高分或最低分是唯一值则不会有什么问题,但如果有其它班级学生的成绩恰好与查询的最高分或最低分相同时就会把那个学生的信息也显示 ...
- 再谈 PHP 未来之路
前段时间我写过一篇博文<phper:敢问路在何方>,分析了 PHPer 的困境以及 PHP 程序员的学习.进阶突破之路.同时我在知乎上也发过类似的提问.从大家的评论和回答看,大体分为以下几 ...
- JSP+Spring+SpringMVC+Hibernate+Mysql实现的校园失物招领网站
项目简介 项目来源于:https://github.com/wenlongup/LostAndFound 因原github仓库无数据库文件,经过本人修改,现将该仓库重新上传至个人gitee仓库. ht ...
- GIL-Guilds(黑白灰染色)
传送门门门门门咩咩咩咩咩咩咩咩咩咩咩咩 \(这题真是扯谈!!!\) \(灰色很高级是吧,但是题目没要你把颜色全部用上去啊!!!\) \(黑色或者白色只有一个条件,但灰色需要和所有三种颜色都相邻.这么难 ...
- mybatis控制台打印执行的sql语句
- Python 为什么抛弃累赘的花括号,使用缩进来划分代码块?
大家好,这是"Python为什么"系列节目的文字稿(文末有观看地址). 本期话题:Python 为什么使用缩进来划分代码块,而不像其它语言使用花括号 {} 或者 "end ...
- Scala 中 Any 类源码
package scalaabstract class Any { def equals(that: Any): Boolean //值比较 def hashCode(): Int //hash值 d ...
- Python 简明教程 --- 3,Python 基础概念
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 控制复杂性是计算机编程的本质. -- Brian Kernighan 了解了如何编写第一个Pytho ...