洛谷P1706 小玉家的电费

本蒟蒻第一次写题解,所以选了一道很H₂O的题十分激动。本题解献给和本蒟蒻一样蒟蒻的OIer。

下面进入正题

通过题意可以知道数据一共分成了三段,即:

·第一段:a<=150
·第二段:150<a<=400
·第三段:a>400

所以我们可以直接用  if  语句进行计算。

然后,题目要求保留一位小数,我们在输出的时候,之间用上保留小数的代码:

setprecision(1)

就能如愿地保留一位小数。为了只保留小数部分,我们要在前面加上:

fixed

然后再加上头文件:

#include<iomanip>

就OK了

好了,废话不多说

献上本蒟蒻的AC代码

 1 #include<iostream>
 2 #include<iomanip>
 3 using namespace std;
 4 int n;
 5 double ans;
 6 int main()
 7 {
 8   cin >> n;
 9   if(n<=150) ans=n*0.4463;
10   else if(n<=400) ans=150*0.4463+(n-150)*0.4663;
11   else ans=150*0.4463+250*0.4663+(n-400)*0.5663;
12   cout << fixed << setprecision(1) << ans;
13   return 0;
14 }
原文地址:https://www.cnblogs.com/w-rb/p/13420201.html