1017. Rate of Return

来源:互联网 发布:云购网站源码 编辑:程序博客网 时间:2024/06/06 15:37

二分。



#include <iostream>#include <cmath>#include <iomanip>using namespace std;int main(){int t,mark=1;double month[20],money[20],lastMonth,lastMoney;while(cin>>t&&t!=-1){for(int z=1;z<=t;z++)cin>>month[z]>>money[z];cin>>lastMonth>>lastMoney;double rate=2,low=1,mid;while(rate-low>=1e-6){mid=(rate+low)/2;double sum=0;for(int i=1;i<=t;i++)sum+=money[i]*pow(mid,lastMonth-month[i]+1);if(sum<lastMoney) low=mid;else rate=mid;}if(mark>1) cout<<endl;cout<<"Case "<<mark++<<": "<<fixed<<setprecision(5)<<low-1<<endl;}return 0;}


原创粉丝点击