【易错点整理】《信息学奥赛一本通》第一章 C++语言入门

易错点

《信息学奥赛一本通》在线评测系统http://ybt.ssoier.cn:8088/
针对每次练习的情况,对不同题号的题目进行易错点归纳:
1000. int main(),注意函数后面带有括号;
1001. 输出cout后面接<<,输入cin后面接>>;
1002. 无
1003. 在C++程序里如调用到scanf和printf语句,需要在前面添加#include头文件;右对齐输出为%md,左对齐输出为%-md;
1004. 定义char类型时,不用添加单引号;用cin输入空格时,需要cin>>’ ';
1005.
【题目描述】
假设地球上的新生资源按恒定速度增长。照此测算,地球上现有资源加上新生资源可供x亿人生活a年,或供y亿人生活b年。
为了能够实现可持续发展,避免资源枯竭,地球最多能够养活多少亿人?
【输入】
一行,包括四个正整数x,a,y,b,两个整数之间用单个空格隔开。x>y,a<b,ax<by,各整数均不大于10000。
【输出】
一个实数z,表示地球最多养活z亿人,舍入到小数点后两位。
【输入样例】
110 90 90 210
【输出样例】
75.00
/ ;*
【解答思路】假设1亿人每年要消耗1份资源,则x亿人需要消耗x份资源,所以x亿人生活a年,一共消耗的资源就是ax份;同理,y亿人生活b年,一共消耗的资源就是by份。因为,题目中说明a<b,ax<by,则他们这两种情况消耗的资源的差距为by-ax,而这种差距是由(b-a)这么多年造成的,所以,用资源差除以时间差,即(by-ax)/(b-a)就可以算出每年地球上新生资源的增长速度。而当每年地球人消耗的资源总量=每年地球新生资源的增长量,就可以达到不消耗原来的资源,实现可持续发展,因此,地球最多养活的z=(by-ax)/(b-a);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值