前天刚参加完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分
16 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:465 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:661 |
WU-小九九 (C++代码)浏览:1684 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:529 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:577 |
简单的a+b (C语言代码)浏览:546 |
简单的a+b (C语言代码)浏览:581 |
罗列完美数 (C语言代码)浏览:491 |
妹子杀手的故事 (C语言代码)浏览:1054 |
整除问题 (C语言代码)浏览:526 |