f877 - 上課啊!!!!!
題目描述
題目要求判斷輸入的字串是否包含驚嘆號。如果字串中包含驚嘆號,則輸出 "YES",否則輸出 "NO"。
解題思路
這題的解題思路非常簡單,只需要遍歷輸入的字串,檢查是否存在驚嘆號即可。如果找到驚嘆號,則立即設定一個布林變數為 false,並在迴圈結束後輸出 "YES"。如果遍歷完整個字串都沒有找到驚嘆號,則輸出 "NO"。
複雜度分析
- 時間複雜度: O(n),其中 n 是輸入字串的長度。因為需要遍歷整個字串來檢查是否存在驚嘆號。
- 空間複雜度: O(1),因為只使用了常數個額外的變數。
程式碼
#include <iostream>
using namespace std;
string x;
int main(){
cin.tie(0); ios::sync_with_stdio(false);
while(getline(cin,x)){
bool ans=1;
for(int i=0;i<x.length()&&ans;++i)
if(x[i]=='!')
ans=0;
if(ans)
cout << "NO\n";
else
cout << "YES\n";
}
}