## Statement 暈船, 原本是搭船後因為搖晃而暈眩、嘔吐的現象。 後來成為一個人在一段感情關係上,不小心認真了、感情上動情了的意思。 我們通常稱這種人為「暈船仔」 Lan是個暈船仔,他每天都在跟喜歡的人聊天, Lan跟他喜歡的人的聊天方式非常特別,他們聊天的內容一般人看不懂(看測資就知道了)。 暈船仔不會放過任何一個對方喜歡自己的可能性, 所以常常會有一些不切實際的幻想,看到一句話就會聯想一大堆事情,甚至連以後小孩叫什麼都想好了。 Lan身為暈船仔,他對「I LOVE U 1 3 1 4」這句話特別敏感,如果看到這句話,不管出現在什麼奇怪的句子中,他都會覺得對方喜歡自己。 舉例而言「I HATE U I HATE U I LOVE U 1 3 1 4 I HATE U I HATE U I HATE U」 這句話就會讓Lan認為對方喜歡自己,那Lan就會回「I LOVE U TOO」 如果對方訊息沒有讓Lan覺得對方喜歡自己的話,Lan會很傷心,就會回「I AM SO SAD」。 就像前面所說的一樣,Lan不想放過任何一個機會,所以他想用一台機器人快速分析對方的訊息,並照著他的回覆規則輸出結果,但是眾所皆知,Lan不會寫程式,請幫他完成這台機器人。 ## Input Format 測資範圍限制 輸入共兩行 第一行包含一個正整數$N$ $(1 \leq N \leq 500)$,代表接下來訊息的字串數 第二行包含$N$個長度$M$ $(1 \leq M \leq 50)$的字串 ## Output Format 輸出共一行 根據題敘中的規則輸出Lan接下來應該回覆的訊息 ## Scoring 本題僅有 $1$ 個子任務,滿分為 $100$ 分,通過該子任務即可拿到本題滿分。 本題子任務: ```tex \begin{tabular}{ | c | c | c | c | } \hline \bf{子任務} & \bf{條件限制} & \bf{分數} & \bf{附加限制} \\ \hline $1$ & $無其他限制$ & $100$ & --- \\ \hline \end{tabular} \end{center} ``` ## 題解 沒有演算法,直接實作就好了。 ### 但要注意,「I LOVE U 1 3 1 4」前後不能有其他字串,例如「II LOVE U 1 3 1 44」就是不符合題目要求的字串。 ### (對不起我題敘寫很爛) ```cpp= #include<bits/stdc++.h> using namespace std; int main() { int n,progress=0,love=0; // progress 為當前檢查到第幾個字串 // love 為是否找到「I LOVE U 1 3 1 4」 cin >> n; vector<string> checklist(7); checklist = {"I","LOVE","U","1","3","1","4"}; // 將「I LOVE U 1 3 1 4」拆成多個字串分開 string check; for (int i=0;i<n;i++) { cin >> check; // 輸入,對於每次輸入的字串做檢查 if (check==checklist[progress]) { progress++; // 符合目標字串,找下一個 } else if (check=="I") { progress = 1; // 不符合目標字串,但是是"I",下一個要找"LOVE" } else { progress = 0; // 不符合目標字串也不是I,從頭開始找 } if (progress==7) { love = 1; // progress為7,代表已經找到完整的「I LOVE U 1 3 1 4」 break; // 跳出迴圈 } } if (love) { cout << "I LOVE U TOO"; // 找到 } else { cout << "I AM SO SAD"; // 沒找到 } } ```