洛谷C++简单题小练习day16—猴子吃桃,地球人口承载力估计两个小程序

day16--(深基7.习8)猴子吃桃--2.20

习题概述

题目描述

一只小猴买了若干个桃子。第一天他刚好吃了这些桃子的一半,又贪嘴多吃了一个;接下来的每一天它都会吃剩余的桃子的一半外加一个。第 n 天早上起来一看,只剩下 1 个桃子了。请问小猴买了几个桃子?

输入格式

输入一个正整数 n,表示天数。

输出格式

输出小猴买了多少个桃子。

代码部分

复制代码
#include<bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;

    int tao = 1;
    for (int i = 1; i < n; i++) {
        tao = (tao + 1) * 2;
    }

    cout << tao << endl;

    return 0;
}

心得体会

逆序思想,解决这个问题:吃剩余的桃子的一半外加一个转变为加一个再乘其一半;题干是剩余一个桃子,那么我们就从一个桃子开始逐渐递增!输出的结果也就是最初买的桃子数了。


day16-- 地球人口承载力估计**--2.20**

习题概述

题目描述

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

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

输入格式

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

输出格式

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

代码表示

法(一)

复制代码
#include<bits/stdc++.h>
using namespace std;

int x, a, y, b;
int main() {
	cin >> x >> a >> y >> b;
	cout << fixed << setprecision(2) << (double)(x*a-y*b)/(a-b)<<endl;
	return 0;
}

法(二)

复制代码
#include<bits/stdc++.h>
using namespace std;

int main()
{
    int a, x, b, y;
    cin >> x >> a >> y >> b;
    printf("%.2f", double(b*y-a*x)/(b-a));
    // %.2f 占位符使输出保留两位小数
    return 0;
}

心得体会

1.要学会提前分析:

我们可以设地球现有资源为 m,一年增加量为 n。

2.问的表示地球最多养活 z 亿人,这个z指的是一年的增加量,即新生资源的增加量;

3.注意舍入到小数点2位的话,两种方式:

1) cout << fixed << setprecision(2) << (double)(x*a-y*b)/(a-b)<<endl;

2) printf("%.2f", double(b*y-a*x)/(b-a)); 注意:%.2f 占位符使输出保留两位小数

相关推荐
第九序言T5 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
m0_639906945 小时前
Redis入门|五种数据结构、使用场景、持久化RDB&AOF
数据结构·数据库·redis
Sakura_j_h_6 小时前
EasyEDA PCB 快速设计Skills
c++·python·github
ZhengEnCi7 小时前
Agent 架构怎么选:从单 Agent 到多 Agent 编排的选型决策指南
算法·架构
龙亘川7 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
程序喵大人7 小时前
【C++入门】内存模型与资源管理 - 09 shared_ptr 和 weak_ptr 解决共享,也带来代价
开发语言·c++·资源管理·智能指针·内存模型
秋天的怀念_David7 小时前
第二十二夜 · 数字迷雾
java·程序人生·算法
Raas1007 小时前
AI网关部署方案?从部署到上线全流程
java·开发语言·人工智能·gateway·ai网关·企业级ai网关·企业级ai产品
Pniubi7 小时前
力扣283移动零(双指针法)
算法·leetcode·职场和发展
hhb_6188 小时前
大模型落地三重优化实战
人工智能·算法·机器学习