前天刚参加完2022程序设计小能手比赛,今天来讲解一下其中的第一道题目。
题目名为“阶梯电量”,分值60。
题目描述:(可能不怎么清楚,因为我还没拿到WPS原版)
我当时看到这道题一开始觉得很简单:不就是判断吗
结果一做:
#includeusing namespace std; int main() { int u,v; cin>>u>>v; if(u<=2760&&u<=4800) { ……………………………… ……………………………… …………………………………… …………………………………… …………………………………… ……………………………… ……………………………… …………………………………… …………………………………… …………………………………… ……………………………… ……………………………… …………………………………… …………………………………… …………………………………… } return 0; }
好家伙,写得我头晕眼花的。
这道题其实有两种解法,一种是看测试点,一种是枚举。
看测试点就比较直接粗暴,但是注意在用else if的时候到最后不要写else!!!我就是被这个坑了10分。
另一种是枚举,这个就非常简单,思路就是运用循坏枚举,从u+1(上个月的电量+1)开始,到这个月的电量结束。其中,如果有未达到2760度的电量,每度电就加0.52元,以此类推。
代码如下:
#include<bits/stdc++.h> using namespace std; int main() { int u,v; double js=0; cin>>u>>v; for(int i=u+1;i<=v;i++) { if(i<=2760) { js+=0.52; } else if(i>2760&&i<=4800) { js+=0.57; } else if(i>4800) { js+=0.82; } } cout<<fixed<<setprecision(2)<<js; return 0; }
制作不易,给个高分,谢谢。
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复