基础 洛谷 入门与面试 地球人口承载力估计 B2006

本人是个刚接触c++8个月的初中生有三年python学习经验想通过在博客上分享题解并提升自己的c++编程水平以后会不定期的发题解,如有不足请大家多多指教。谢谢! 

 我以后会将我所做过的重点或基础题目以题解的形式发布,大家可以把我的主页当作题单跟着刷也可以和我交流题目有必要请关注我哦

题目描述

假设地球上的新生资源按恒定速度增长。照此测算,地球上现有资源加上新生资源可供 x 亿人生活 a年,或供 y 亿人生活 b年。

为了能够实现可持续发展,避免资源枯竭,地球最多能够养活多少亿人?

输入格式

一行,包括四个正整数 x,a,y,b,两个整数之间用单个空格隔开。

输出格式

一个实数 z,表示地球最多养活 z 亿人,舍入到小数点后两位.

说明/提示

对于 100% 的数据,x>y,a<b,ax<by。

解析

假设;1份资源能养活1亿人一年

a,b代表x,y个人在a,b年后把地球的所有资源用尽(包括每年新生资源和原有资源)我们不知道地球的原有资源有多少但是我们把(x*a)-(y*b)就把地球的原有资源减掉了在除以(a-b)就可以得到每年新生资源,为了人类能持续生存下去所以不能动原有资源否则会资源枯竭所以人口最多可以是( x*a-y*b )/(a-b)

这个题确实把我难住了我也是看了题解后才明白的

1.首先写一个万恶的头文件(管他万不万能万恶就对了)

#include <bits/stdc++.h>
using namespace std;
int main()//名言积累:"生活不止眼前的苟且,还有诗和远方。" —— 高晓松
{
 
}

2.然后定义并输入4个double类型变量

double x,y,a,b;
cin>>x>>a>>y>>b;

3.输出两位小数位的人口数量即可

#include <bits/stdc++.h>
using namespace std;
int main()//名言积累:"成功的路上并不拥挤,因为坚持的人不多。" —— 佚名
{
    double x,y,a,b;
    cin>>x>>a>>y>>b;
    printf("%.2f",1.0*( x*a-y*b )/(a-b));
}

the end

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值