内部收益率(二分)

题目描述
内部收益率(二分)_第1张图片

输入
在这里插入图片描述

输出
对于每组数据,输出仅一行,即项目的IRR,四舍五入保留小数点后两位。

样例输入
1
-1 2
2
-8 6 9
0
样例输出
1.00
0.50

#include 
using namespace std;
#define ll long long
int n,cf[15];
double l,r,mid,ans,t,tt,sum;
int main()
{
 ios::sync_with_stdio(false);
 while(cin>>n&&n)
 {
 	for(int i=0;i<=n;i++)
 	 cin>>cf[i];
 	l=-1.0;r=1000000;
 	for(int i=0;i<100;i++)
 	{
 	 ans=l+(r-l)/2;
	 t=1.0;tt=0;
	 for(int j=1;j<=n;j++)
	 {
	  t/=(1+ans);
	  tt+=t*cf[j];	
	 }
	 if(tt<(-cf[0])) r=ans;
	 else l=ans;	
	}
	cout<<fixed<<setprecision(2)<<ans<<endl;
 }
 return 0;	
} 

你可能感兴趣的:(CUMTOJ,算法)