題目:如果乙個單詞通過迴圈右移獲得的單詞,我們稱這些單詞都為一種迴圈單詞。 例如:picture 和 turepic 就是屬於同一種迴圈單詞。 現在給出n個單詞,需要統計這個n個單詞中有多少種迴圈單詞。
輸入描述:
輸入包括n+1行:第一行為單詞個數n(1 ≤ n ≤ 50)
接下來的n行,每行乙個單詞word[i],長度length(1 ≤ length ≤ 50)。由小寫字母構成
輸出描述:
輸出迴圈單詞的種數
輸入例子:
5picture
turepic
icturep
word
ordw
輸出例子:2
-題目分析
按照題目要求,要統計單詞種類,只需要解決兩個子問題:
1.如何判斷兩個單詞是不是迴圈單詞
2.怎樣把幾個同類單詞記做一種
基於劃分出來的兩個子問題,我們可以用乙個vector放單詞,再用乙個vector表示當前單詞是不是一種新單詞。
至少有一種單詞就是第乙個單詞,所以下標curword從1開始遍歷vector,迴圈內部從0到curword每一種新單詞都和curword比較,如果是迴圈單詞,就把curword標記為不是新單詞。
-**
#define _crt_secure_no_warnings
#include#include#includeusing namespace std;
//判斷left和right是不是同一種單詞的迴圈詞
bool iscirstr(string left, string right)
} if (flag)
}if (flag)
return true;
} return false;
}int main()
int kinds = 1;//至少有一種單詞
for (int curword = 1; curword < n; curword++)//順strlist遍歷
}} if (newword[curword] == true)
kinds++;//統計單詞種類
} cout << kinds << endl;
system("pause");
return 0;
}
程式設計題 迴圈單詞
如果乙個單詞通過迴圈右移獲得的單詞,我們稱這些單詞都為一種迴圈單詞。例如 picture 和 turepic 就是屬於同一種迴圈單詞。現在給出n個單詞,需要統計這個n個單詞中有多少種迴圈單詞。輸入描述 輸入包括n 1行 第一行為單詞個數n 1 n 50 接下來的n行,每行乙個單詞word i 長度l...
程式設計題 1 單詞翻轉
include include using namespace std int main else for int j tail j 0 j cout word j return 0 程式設計題 1 單詞翻轉 注意 總時間限制 1000ms 記憶體限制 65536kb 描述輸入乙個句子 一行 將句子...
程式設計題 查詢兄弟單詞
talk is cheap,show me the code.實現乙個可儲存若干個單詞的字典。使用者可以 在字典中加入單詞 查詢指定單詞在字典中的兄弟單詞個數 查詢指定單詞的指定序號的兄弟單詞,指定序號指字典中兄弟單詞按字典順序排序後的序號 從1開始 清空字典中所有單詞。定義,格式說明 單詞 由小寫...