当前位置: 首页 > article >正文

洛谷 B2006:地球人口承载力估计 ← float 类型

【题目来源】
https://www.luogu.com.cn/problem/B2006

【题目描述】
假设地球上的新生资源按恒定速度增长。照此测算,地球上现有资源加上新生资源可供 x 亿人生活 a 年,或供 y 亿人生活 b 年。
为了能够实现可持续发展,避免资源枯竭,地球最多能够养活多少亿人?

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

【输出格式】
一个实数 z,表示地球最多养活 z 亿人,舍入到小数点后两位。

【输入样例】
110 90 90 210

【输出样例】
75.00

【说明/提示】
对于 100% 的数据,1≤x,a,y,b≤10^4,x>y,a<b,ax<by。

【算法分析】
设 k 是年人均消耗资源量,r 是年新增资源量。
x 亿人生活 a 年,总消耗是 xak,而这段时间再生的资源是 ra,则初始资源量为 xak-ra。
y 亿人生活 b 年,总消耗是 ybk,而这段时间再生的资源是 rb,则初始资源量为 ybk-rb。
因为初始资源量相同,所以 xak-ra=ybk-r*b。
由上式 xak-ra=ybk-r*b,可得年新增资源量 r=(xak-ybk)/(a-b),再除以年人均消耗资源量 k,可得地球最多养活人数为
(xa - yb)/(a - b)

【算法代码】

#include <bits/stdc++.h>
using namespace std;

int main() {
    int x,a,y,b;
    cin>>x>>a>>y>>b;
    float t=1.0*(x*a-y*b)/(a-b);
    printf("%.2f",t);

    return 0;
}

/*
in:
110 90 90 210

out:
75.00
*/



【参考文献】
https://www.luogu.com.cn/problem/solution/B2006







 


http://www.kler.cn/a/563083.html

相关文章:

  • WebView中操作视频播放,暂停
  • Redis 中有序集合(Sorted Set)的使用方法
  • 用PySpark和PyTorch实现跨境支付Hive数据仓库的反洗钱数据分析
  • 物联网+大数据,智慧公租房管理系统构建未来社区
  • 嵌入式硬件篇---阶跃函数冲激函数
  • 分布式主键生成服务
  • 【清华大学】DeepSeek从入门到精通系列教程 第五版:DeepSeek与AI幻觉 pdf文档下载
  • 聊聊制造企业数字化质量管理的业务架构与流程
  • Qt | Excel创建、打开、读写、另存和关闭
  • 大模型应用: 多模态交互
  • 给虚拟机配置IP
  • 力扣-动态规划-494 目标和
  • html中的css
  • Windows版FFmpeg使用及B站视频下载示例python源码
  • c#笔记-基础知识
  • 轮式机器人在复杂地形中如何选择合适的全局路径规划算法
  • Python 实战:构建分布式文件存储系统全解析
  • 无框架简易Java服务器后端
  • S2GAE论文阅读
  • 前端 AJAX 一、AJAX概要