jzoj 3843 尋找羔羊

2021-09-29 09:22:59 字數 484 閱讀 4162

給定乙個由小寫字母組成的字串,尋找包含「agnus」(羔羊)的子串的個數。注意:當且僅當兩個子串的起始位置和終點不同時,這兩個子串屬於不同的子串。

從頭到尾遍歷一次字串,每碰到一次「agnus」,用「agnus」前面的字元數目乘上

「agnus」後面的字元數目,即為含有當前「agnus」的字串數目。

直接統計即可,不過要注意去重。

#include

#include

using

namespace std;

char c1[

30010

],c2[10]

=;int kmp[

30010

],ans,g;

signed

main()

}printf

("%d"

,ans)

;}

384,整數反轉

給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 問題分析看到這道題可能我們最容易想到的是先把他轉化為乙個字串,然後再進行反轉,如下 public intrevers...

3 8 4 確定迴圈

for迴圈語句是支援迭代的一種通用結構,利用每次迭代之後更新的計數器或類似的變數來控制迭代次數。for int i 1 i 10 i for語句的第一部分通常用於對計數器初始化 第二部分給出每次新一輪迴圈執行前要檢測的迴圈條件 第三部分指示如何更新計數器。有一條不成文的規則 for語句的3個部分應該...

384,整數反轉

給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 問題分析看到這道題可能我們最容易想到的是先把他轉化為乙個字串,然後再進行反轉,如下 public intrevers...