日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

poj 1035

發布時間:2024/1/17 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 poj 1035 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://poj.org/problem?id=1035

poj的一道字符串的水題,不難,但就是細節問題我也wa了幾次

?

題意就是給你一個字典,再給你一些字符,首先如果字典中有這個字符串,則直接輸出,如果沒有的話,那就找字符串加一個字符或少一個字符或者換一個字符是否可以在字典中找到相應的字符串

?

解題思路:我是用string類型的,比較方便看兩個字符串是否相等,用char的話,就是strcmp函數也行。

如果找不到相等的,那么久分別在字典中找到與這個字符串的長度相差1的或者相等的。

然后匹配,如果匹配的結果相差一個則輸出

?

1 #include <stdio.h> 2 #include <string.h> 3 #include <string> 4 #include <iostream> 5 #include <stdlib.h> 6 7 using namespace std; 8 9 string str[10005],str1[10005]; 10 11 int main() 12 { 13 int dic=0,need=0; 14 while(cin>>str[dic]){ 15 if(str[dic]=="#") break; 16 dic++; 17 } 18 while(cin>>str1[need]){ 19 if(str1[need]=="#") break; 20 need++; 21 } 22 //qsort(str,dic,sizeof(str[0]),cmp); //沒用的,最開始我是以為要對字典排序輸出,其實并不用 23 for(int i=0;i<need;i++){ 24 int flog=0; //標記,如果找得到相同的字符串,則continue。 25 for(int j=0;j<dic;j++){ 26 if(str1[i]==str[j]) { 27 cout<<str1[i]<<" is correct"<<endl; 28 flog=1; 29 break; 30 } 31 } 32 if(flog==1) continue; 33 int len=str1[i].size(); 34 cout<<str1[i]<<":"; 35 for(int j=0;j<dic;j++){ 36 int strl=str[j].size(); 37 if(strl==len||strl==len+1||strl==len-1){ //字符串相差1的或者相等的,就用來匹配是否有可能相差一個字符,這是一種減枝的辦法。 38 int ans=0; 39 if(len>strl){ //吧那個較長的字符作為被匹配的,用短的來匹配長的字符串。 40 for(int m=0,d=0;m<len;m++){ 41 if(str1[i][m]==str[j][d]){ 42 ans++; 43 d++; 44 } 45 } 46 }else if(len<strl){ 47 for(int m=0,d=0;m<strl;m++){ 48 if(str[j][m]==str1[i][d]){ 49 ans++; 50 d++; 51 } 52 } 53 }else if(len==strl){ 54 for(int m=0,d=0;m<strl;m++,d++) 55 if(str[j][m]==str1[i][d]) ans++; 56 } 57 if(len>=strl&&ans==len-1) cout<<" "<<str[j]; 58 if(len<strl&&ans==len) cout<<" "<<str[j]; 59 } 60 } 61 cout<<endl; 62 } 63 return 0; 64 }

?

轉載于:https://www.cnblogs.com/Tree-dream/p/5493771.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的poj 1035的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。