国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

P1024 [NOIP2001 提高組] 一元三次方程求解題解

這篇具有很好參考價值的文章主要介紹了P1024 [NOIP2001 提高組] 一元三次方程求解題解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

題目

有形如:P1024 [NOIP2001 提高組] 一元三次方程求解題解,二分查找與二分答案,算法,c++這樣的一個一元三次方程。給出該方程中各項的系數(shù)(a,b,c,d均為實數(shù)),并約定該方程存在三個不同實根(根的范圍在?100至100之間),且根與根之差的絕對值≥1。要求由小到大依次在同一行輸出這三個實根(根與根之間留有空格),并精確到小數(shù)點后2位。

提示:記方程,若存在2個數(shù)和,且?,,則在(,?)?之間一定有一個根。

輸入輸出格式

輸入格式

一行,4個實數(shù)a,b,c,d。

輸出格式

一行,3個實根,從小到大輸出,并精確到小數(shù)點后2位。

輸入輸出樣例

輸入樣例

1 -5 -4 20

輸出樣例

-2.00 2.00 5.00

解析

此題目考慮使用二分的方法求解。使用零點存在性定理:對連續(xù)函數(shù)f(x)若有f(a)*f(b)<0(a<b)則f(x)在區(qū)間(a,b)上至少存在一個解。這樣就可以判斷在一個區(qū)間中是否有解。

令條件為f(x)>=0,顯然在上述區(qū)間(a,b)上條件具有單調(diào)性:在根的一側(cè)f(x)都是負(fù)數(shù),另一側(cè)f(x)都是正數(shù)。題目中說明了任意兩根之差不小于1,那么可以把[-100,100]等分成若干份[i,i+1)(這里左閉右開是為了防止端點處是零點導(dǎo)致得到重復(fù)解)。在每個小段中至多只有一個零點,這意味著這個區(qū)間上的條件具有單調(diào)性。

于是一個定義在實數(shù)區(qū)間上的二分方法就得出:如果中點的函數(shù)值和某端點的正負(fù)性相同,那么零點一定在中點的另一側(cè)。

注意:實數(shù)之間不能直接比較是否相等,而是判斷之間的差值是否小于eps。

同時二分的次數(shù)和精度有關(guān),但是考慮每次二分的區(qū)間都可以減少一半,縮減的速度還是很快的,因此也是對數(shù)級別。與整數(shù)區(qū)間二分有一點微妙的區(qū)別,實數(shù)區(qū)間上的二分需要確定好精度。題目要求輸出與保留兩位小數(shù),那么可以在二分端點相差不超過時停止二分來確保精度。?文章來源地址http://www.zghlxwxcb.cn/news/detail-831185.html

#include<iostream>
#include<cstdio>
#include<cmath>
#define eps 1e-4
using namespace std;
double a,b,c,d;
double f(double x){
	return a*pow(x,3)+b*pow(x,2)+c*x+d;//計算函數(shù)值
}
int main(){
	cin>>a>>b>>c>>d;
	for(int i=-100;i<=100;i++){
		double l=i,r=i+1,mid;
		if(fabs(f(l))<eps){//端點處處理,左閉右開
			printf("%.2lf ",l);
		}
		else if(fabs(f(r))<eps){
			continue;
		}
		else if(f(l)*f(r)<0){//在區(qū)間(l,r)上執(zhí)行二分
			while(r-l>eps){
				mid=(l+r)/2;
				if(f(mid)*f(r)>0){//如果f(mid)和f(r)正負(fù)性相同,那么零點在mid左側(cè)
					r=mid;
				}
				else{//否則在另一側(cè)
					l=mid;
				}
			}
			printf("%.2lf ",l);
		}
	}
}

到了這里,關(guān)于P1024 [NOIP2001 提高組] 一元三次方程求解題解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • P1025 [NOIP2001 提高組] 數(shù)的劃分(dfs+剪枝 or dp)

    思路:暴力枚舉搜索,不過要優(yōu)雅剪枝一下下 1:處理重復(fù)情況--我們只需要然后方取值從前往后的時候呈現(xiàn)遞增(可以相等,即不遞減) 2:剪枝--基于上思想,剩下的“盤子”里面的數(shù)至少都大于等于當(dāng)前“盤子”的數(shù),所以我們?nèi)⊥戤?dāng)前盤子的數(shù)完,就可判斷--剩下的盤子

    2024年02月14日
    瀏覽(43)
  • P1030 [NOIP2001 普及組] 求先序排列

    給出一棵二叉樹的中序與后序排列。求出它的先序排列。(約定樹結(jié)點用不同的大寫字母表示,且二叉樹的節(jié)點個數(shù)?≤8≤8)。 共兩行,均為大寫字母組成的字符串,表示一棵二叉樹的中序與后序排列。 共一行一個字符串,表示一棵二叉樹的先序。 輸入 #1 復(fù)制 輸出 #1 復(fù)制

    2023年04月22日
    瀏覽(33)
  • 信息學(xué)奧賽一本通:1316:【例4.6】數(shù)的計數(shù)(Noip2001)

    【題目描述】 我們要求找出具有下列性質(zhì)數(shù)的個數(shù)(包括輸入的自然數(shù)nn)。先輸入一個自然數(shù)n(n≤1000)n(n≤1000),然后對此自然數(shù)按照如下方法進(jìn)行處理: 不作任何處理; 在它的左邊加上一個自然數(shù),但該自然數(shù)不能超過原數(shù)的一半; 加上數(shù)后,繼續(xù)按此規(guī)則進(jìn)行處理,直

    2024年02月10日
    瀏覽(20)
  • 【洛谷 P1029】[NOIP2001 普及組] 最大公約數(shù)和最小公倍數(shù)問題 題解(更相減損術(shù))

    輸入兩個正整數(shù) x 0 , y 0 x_0, y_0 x 0 ? , y 0 ? ,求出滿足下列條件的 P , Q P, Q P , Q 的個數(shù): P , Q P,Q P , Q 是正整數(shù)。 要求 P , Q P, Q P , Q 以 x 0 x_0 x 0 ? 為最大公約數(shù),以 y 0 y_0 y 0 ? 為最小公倍數(shù)。 試求:滿足條件的所有可能的 P , Q P, Q P , Q 的個數(shù)。 一行兩個正整數(shù) x 0 , y 0

    2024年02月09日
    瀏覽(24)
  • P1012 [NOIP1998 提高組] 拼數(shù)

    設(shè)有??n?個正整數(shù)??1…??a1?…an?,將它們聯(lián)接成一排,相鄰數(shù)字首尾相接,組成一個最大的整數(shù)。 第一行有一個整數(shù),表示數(shù)字個數(shù)??n。 第二行有??n?個整數(shù),表示給出的??n?個整數(shù)???ai?。 一個正整數(shù),表示最大的整數(shù) 輸入 #1 復(fù)制 輸出 #1 復(fù)制 輸入 #

    2023年04月08日
    瀏覽(20)
  • [NOIP2003 提高組] 加分二叉樹

    [NOIP2003 提高組] 加分二叉樹

    設(shè)一個?n?個節(jié)點的二叉樹?tree 的中序遍歷為(1,2,3,…,n),其中數(shù)字 1,2,3,…,n?為節(jié)點編號。每個節(jié)點都有一個分?jǐn)?shù)(均為正整數(shù)),記第?i?個節(jié)點的分?jǐn)?shù)為 di?,tree?及它的每個子樹都有一個加分,任一棵子樹 subtree(也包含?tree?本身)的加分計算方法如下: subtree?的左子

    2024年02月08日
    瀏覽(17)
  • P1013 [NOIP1998 提高組] 進(jìn)制位

    著名科學(xué)家盧斯為了檢查學(xué)生對進(jìn)位制的理解,他給出了如下的一張加法表,表中的字母代表數(shù)字。 例如: 其含義為: ?+?=?L+L=L,?+?=?L+K=K,?+?=?L+V=V,?+?=?L+E=E ?+?=?K+L=K,?+?=?K+K=V,?+?=?K+V=E,?+?=??K+E=KL ?? ?+?=??E+E=KV 根據(jù)這些規(guī)則可推

    2023年04月08日
    瀏覽(17)
  • NOIP2003提高組T1:神經(jīng)網(wǎng)絡(luò)

    NOIP2003提高組T1:神經(jīng)網(wǎng)絡(luò)

    [NOIP2003 提高組] 神經(jīng)網(wǎng)絡(luò) 人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network)是一種新興的具有自我學(xué)習(xí)能力的計算系統(tǒng),在模式識別、函數(shù)逼近及貸款風(fēng)險評估等諸多領(lǐng)域有廣泛的應(yīng)用。對神經(jīng)網(wǎng)絡(luò)的研究一直是當(dāng)今的熱門方向,蘭蘭同學(xué)在自學(xué)了一本神經(jīng)網(wǎng)絡(luò)的入門書籍后,提出了一

    2024年01月23日
    瀏覽(17)
  • P1967 [NOIP2013 提高組] 貨車運輸 題解

    原題地址 由于題目要求的是使兩點之間的最小邊權(quán)最大,所以可以構(gòu)造最大生成樹(最大生成樹一定是最大瓶頸生成樹,而瓶頸生成樹上兩點之間的路徑,在原圖中的所有路徑中,最小邊權(quán)仍然最大,即滿足題目要求,詳見 https://oi-wiki.org/graph/mst/#瓶頸生成樹 ),答案為最大

    2024年04月08日
    瀏覽(24)
  • P1039 [NOIP2003 提高組] 偵探推理

    P1039 [NOIP2003 提高組] 偵探推理

    明明同學(xué)最近迷上了偵探漫畫《柯南》并沉醉于推理游戲之中,于是他召集了一群同學(xué)玩推理游戲。游戲的內(nèi)容是這樣的,明明的同學(xué)們先商量好由其中的一個人充當(dāng)罪犯(在明明不知情的情況下),明明的任務(wù)就是找出這個罪犯。接著,明明逐個詢問每一個同學(xué),被詢問者

    2023年04月26日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包