洛谷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 占位符使输出保留两位小数

相关推荐
不想写代码的星星3 小时前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
祈安_3 小时前
Java实现循环队列、栈实现队列、队列实现栈
java·数据结构·算法
归去_来兮16 小时前
拉格朗日插值算法原理及简单示例
算法·数据分析·拉格朗日插值
千寻girling1 天前
Python 是用来做 AI 人工智能 的 , 不适合开发 Web 网站 | 《Web框架》
人工智能·后端·算法
颜酱1 天前
一步步实现字符串计算器:从「转整数」到「带括号与优化」
javascript·后端·算法
不想写代码的星星1 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
CoovallyAIHub2 天前
语音AI Agent编排框架!Pipecat斩获10K+ Star,60+集成开箱即用,亚秒级对话延迟接近真人反应速度!
深度学习·算法·计算机视觉
NineData2 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
木心月转码ing2 天前
Hot100-Day14-T33搜索旋转排序数组
算法
会员源码网2 天前
内存泄漏(如未关闭流、缓存无限增长)
算法