CCF - 201409-3 - 字符串匹配
生活随笔
收集整理的這篇文章主要介紹了
CCF - 201409-3 - 字符串匹配
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
問題描述
| 試題編號(hào): | 201409-3 |
| 試題名稱: | 字符串匹配 |
| 時(shí)間限制: | 1.0s |
| 內(nèi)存限制: | 256.0MB |
| 問題描述: | 問題描述 給出一個(gè)字符串和多行文字,在這些文字中找到字符串出現(xiàn)的那些行。你的程序還需支持大小寫敏感選項(xiàng):當(dāng)選項(xiàng)打開時(shí),表示同一個(gè)字母的大寫和小寫看作不同的字符;當(dāng)選項(xiàng)關(guān)閉時(shí),表示同一個(gè)字母的大寫和小寫看作相同的字符。 輸入格式 輸入的第一行包含一個(gè)字符串S,由大小寫英文字母組成。 第二行包含一個(gè)數(shù)字,表示大小寫敏感的選項(xiàng),當(dāng)數(shù)字為0時(shí)表示大小寫不敏感,當(dāng)數(shù)字為1時(shí)表示大小寫敏感。 第三行包含一個(gè)整數(shù)n,表示給出的文字的行數(shù)。 接下來n行,每行包含一個(gè)字符串,字符串由大小寫英文字母組成,不含空格和其他字符。 輸出格式 輸出多行,每行包含一個(gè)字符串,按出現(xiàn)的順序依次給出那些包含了字符串S的行。 樣例輸入 Hello 1 5 HelloWorld HiHiHelloHiHi GrepIsAGreatTool HELLO HELLOisNOTHello 樣例輸出 HelloWorld HiHiHelloHiHi HELLOisNOTHello 樣例說明 在上面的樣例中,第四個(gè)字符串雖然也是Hello,但是大小寫不正確。如果將輸入的第二行改為0,則第四個(gè)字符串應(yīng)該輸出。 評(píng)測(cè)用例規(guī)模與約定 1<=n<=100,每個(gè)字符串的長(zhǎng)度不超過100。 |
思路
用C++的string變量實(shí)現(xiàn)。
在Gcc環(huán)境中,不支持小寫轉(zhuǎn)換函數(shù)strlwr();
在Dev-C++環(huán)境中,是支持函數(shù)strlwr()的。 代碼
#include<iostream> #include<cstring> using namespace std; int main() {char key[101],s[101],lowerkey[101],lowers[101];int option,n;cin>>key>>option>> n;// 獲得key的小寫字符串,放在變量lowerkey中 strcpy(lowerkey,key);strlwr(lowerkey);while(n--){cin>>s;if(option==0) // 大小寫無關(guān) {strcpy(lowers,s);strlwr(lowers);if(strstr(lowers,lowerkey))cout<<s<<endl;}else // option=1,大小寫有關(guān) {if(strstr(s,key))cout<<s<<endl;}}return 0; }
?
轉(zhuǎn)載于:https://www.cnblogs.com/5211314jackrose/p/7530739.html
總結(jié)
以上是生活随笔為你收集整理的CCF - 201409-3 - 字符串匹配的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 女士燃油摩托车电瓶多少钱?
- 下一篇: 白话学习MVC(六)模型绑定