藍橋杯C 試題 演算法提高 字串匹配

2021-10-04 23:29:00 字數 884 閱讀 6159

給出乙個字串和多行文字,在這些文字中找到字串出現的那些行。你的程式還需支援大小寫敏感選項:當選項開啟時,表示同乙個字母的大寫和小寫看作不同的字元;當選項關閉時,表示同乙個字母的大寫和小寫看作相同的字元。

輸入的第一行包含乙個字串s,由大小寫英文本母組成。

第二行包含乙個數字,表示大小寫敏感的選項,當數字為0時表示大小寫不敏感,當數字為1時表示大小寫敏感。

第三行包含乙個整數n,表示給出的文字的行數。

接下來n行,每行包含乙個字串,字串由大小寫英文本母組成,不含空格和其他字元。

輸出多行,每行包含乙個字串,按出現的順序依次給出那些包含了字串s的行。

hello15

helloworld

hihihellohihi

grepisagreattool

hello

helloisnothello

helloworld

hihihellohihi

helloisnothello

在上面的樣例中,第四個字串雖然也是hello,但是大小寫不正確。如果將輸入的第二行改為0,則第四個字串應該輸出。

1<=n<=100,每個字串的長度不超過100。

#include#includeusing namespace std;

int f(char ch1,char ch2)//判斷兩個字元在不區分大小寫的情況下,是否相同

int main()

}if(cnt==s.size())//如果cnt為s字串的長度,則證明在ss字串中,存在與s相等的子串}}

else//與flag=1同理

}if(cnt==s.size())}}

}return 0;

}

藍橋杯試題 演算法提高 字串匹配

題目描述 資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給出乙個字串和多行文字,在這些文字中找到字串出現的那些行。你的程式還需支援大小寫敏感選項 當選項開啟時,表示同乙個字母的大寫和小寫看作不同的字元 當選項關閉時,表示同乙個字母的大寫和小寫看作相同的字元。輸入格式 輸入的第一...

藍橋杯 試題 演算法提高 字串匹配

問題描述 給出乙個字串和多行文字,在這些文字中找到字串出現的那些行。你的程式還需支援大小寫敏感選項 當選項開啟時,表示同乙個字母的大寫和小寫看作不同的字元 當選項關閉時,表示同乙個字母的大寫和小寫看作相同的字元。輸入格式 輸入的第一行包含乙個字串s,由大小寫英文本母組成。第二行包含乙個數字,表示大小...

藍橋杯C 試題 演算法提高 字串的操作

輸入第一行包含字串s,第二行包含乙個整數q,接下來q行分別為q個指令。輸出為1行,為按順序執行完輸入指令後的字串。hellomyworld 對於30 的資料,q 1 對於70 的資料,如有swap指令,swap指令中b a d c 對於100 的資料,最終字串長度不大於40000,1 q 150 由...