1 条题解
-
0
练21.2 邮寄包裹
解题思路
超过 30 千克直接 Fail。其余按重量段选每公斤单价 0.80、0.75、0.70,再乘全部重量并加 0.2 手续费。
正确性说明
表格给出重量所属档的单价,用该档单价计算并加每件固定手续费。
易错点
不是分段累进收费;20、30 都可邮寄;两位小数。
复杂度
输入规模固定,时间 O(1),额外空间 O(1)。
参考代码(C++11)
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); double x; cin >> x; if (x > 30) cout << "Fail\n"; else cout << fixed << setprecision(2) << x * (x <= 10 ? 0.8 : x <= 20 ? 0.75 : 0.7) + 0.2 << "\n"; return 0; }
- 1