Boudreaux 和 Thibodeaux 駕駛一輛 18 輪卡車運送貨物,路經三座地下通道。卡車高度為 168 英吋。輸入三個整數,分別代表三座地下通道的高度(單位:英吋,範圍 0~300)。若卡車高度嚴格小於所有通道高度,輸出 NO CRASH;否則輸出 CRASH X,其中 X 是第一個導致碰撞的通道高度(即該通道高度 ≤ 168)。
本題屬於簡單的模擬題。讀取三個整數 h1, h2, h3,依序檢查是否 ≤ 168。若發現第一個不滿足條件的通道,立即輸出碰撞資訊;若三個通道皆高於 168,則輸出安全通過。
#include <iostream>
using namespace std;
int main() {
int h1, h2, h3;
while (cin >> h1 >> h2 >> h3) {
if (h1 <= 168) {
cout << "CRASH " << h1 << endl;
} else if (h2 <= 168) {
cout << "CRASH " << h2 << endl;
} else if (h3 <= 168) {
cout << "CRASH " << h3 << endl;
} else {
cout << "NO CRASH" << endl;
}
}
return 0;
}
時間複雜度 O(1),空間複雜度 O(1)。
輸入:180 160 170
輸出:CRASH 160
解析:第一個通道 180 > 168 安全,第二個通道 160 ≤ 168 發生碰撞,輸出 CRASH 160。