```cpp
else if(a>150){
cout<<fixed<<setprecision(1)<<50*0.4463+(a-150)*0.4633;
}
```
这里应该是
```cpp
else if(a>150){
cout<<fixed<<setprecision(1)<<150*0.4463+(a-150)*0.4663;
}
```
by ZHOUzihan415 @ 2022-07-04 21:01:39
@[start_dream](/user/745088)
```cpp
}else if(a>150){
cout<<fixed<<setprecision(1)<<50*0.4463+(a-150)*0.4633;
```
的 0.4633 是怎么回事?
by Jerrycyx @ 2022-07-04 21:01:53
两处数字打错了,手动模拟一下样例就能找到
by ZHOUzihan415 @ 2022-07-04 21:02:32
@[start_dream](/user/745088)
by ZHOUzihan415 @ 2022-07-04 21:02:57
谢谢大佬们!!已经通过了
by F_oR_es_T @ 2022-07-04 21:05:18
//AC code: You'd better use "(double)(expression)" when it comes to "%.nf" of "printf". By the way, acquire the information above the code more cautiously next time.
eg:0.4633--0.4663. 50--150.//
```cpp
#include<iostream>
#include<iomanip>
```
using namespace std;
int main(){
double a,c;
cin>>a;
if(a>400){
c=(double)(150*0.4463+250*0.4663+(a-400)*0.5663);
printf("%.1f",c);
}else if(a>150){
c=(double)(150*0.4463+(a-150)*0.4663);
printf("%.1f",c);
}else{
c=(double)(0.4463*a);
printf("%.1f",c);
}
return 0;
}
by JASONYAN @ 2022-07-04 21:22:50