洛谷P1308 統計單詞數 題解 模擬

2022-05-19 21:26:46 字數 830 閱讀 3512

解題思路:

這道題目因為需要記錄第乙個單詞出現的位置,所以需要整行讀入。

我們假設給定單詞是s,給定文章是t。那麼在c++當中,使用char陣列可以按照如下方式輸入:

char s[maxn], t[maxn];

gets(s);

gets(t);

使用string可以按照如下方式輸入:

string s, t;

getline(cin, s);

getline(cin, t);

因為這裡不區分大小寫,所以我們在一開始可以考慮將所有字母都轉成小寫(c++中可以使用tolower()函式)。

然後,我們假設假設 \(s\) 的長度為 \(n\),\(t\) 的長度為 \(m\),

則我們知道了乙個滿足條件的子串。

比較字串,可以在內層再開乙個for迴圈,也可以使用strncmp(char陣列) 或者t.substr(i,n)==s(string) 來判斷。

示例**如下:

#include using namespace std;

string s, t;

int n, m, num, id = -1;

int main()

}if (id != -1) cout << num << " " << id << endl;

else puts("-1");

return 0;

}

洛谷P1308 統計單詞數

基本思路 1.讀入字串 2.轉化大小寫 3.查詢空格並提取字串 4.比較 實現過程中需注意的細節 1.需用getline整行讀入,因為cin讀入到空格時會停止。注意 使用getline用鍵盤輸入字串末會有空格,但使用測試資料不會出現空格 2.為了方便提取最後乙個單詞,讀入結束後在字串最後新增乙個空格...

洛谷 P1308 統計單詞數

第一題那個isbn那個死活過不了,我下了in和out的資料看了也是一模一樣,無奈。這個是過了的。處理的思路和實驗十二 2018 d.實驗10 9 指標陣列高階有點像,用兩個指標來確定單詞。include intmatchignorecase char char 不區分大小寫的檢測函式 intmain...

洛谷P1308 統計單詞數

我太難了我太菜 思路主要來自這個排在第一的高讚回答,這個答主寫了兩種方法,第一種一般人學不來,但是第二種比較好理解,做了那個例題之後,順著這種思路就解了這道題。主要過程就是 獲取輸入 統一大小寫 然後是最關鍵的統計單詞數 統計單詞數的思路如下 1 用到的變數 count 用來記錄有幾個匹配的單詞 s...