h659 - 計程車 (Taxi)
題目描述
題目描述了計程車的計費方式,並給定了起步里程、總里程、以及上下車時間。要求計算總車資。計費方式包含:
- 基本費:20 元
- 每 2 公里加 5 元
- 超過 3 公里後,每公里加 5 元
- 晚上 18:00 後,每公里加 185 元,之後每公里加 10 元
解題思路
這題主要考驗對題目描述的理解和模擬計費方式的能力。程式碼直接根據題目描述的計費規則進行計算。首先計算基本費和 2 公里內的費用,然後根據里程數和時間計算超過 3 公里後的費用,最後計算晚上 18:00 之後的費用。
複雜度分析
- 時間複雜度: O(1)
- 空間複雜度: O(1)
程式碼
#include <iostream>
using namespace std;
int k,w,s,e,m;
int main(){
cin >> k >> w >> s >> e;
m=20+(w/2)*5;
for(int i=3;i<=k;++i)
m+=5;
for(int i=s+1;i<=e;++i)
if(i>18)
m+=185+(i-19)*10;
cout << m;
}