hdu 4545 魔法串 2013金山西山居创意游戏程序挑战赛——初赛(1)
生活随笔
收集整理的這篇文章主要介紹了
hdu 4545 魔法串 2013金山西山居创意游戏程序挑战赛——初赛(1)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4545
?
這題太坑了,小明的串可以任意刪掉某個(gè)字符 這句話不知道大家是怎么理解的,我覺得應(yīng)該是能夠刪除其中的一種字符,但是個(gè)數(shù)不限。
AC:直接模擬,相同或是能夠轉(zhuǎn)換得到就往后繼續(xù),不能就刪除小明的,然后在判斷。
坑死了。。。。。。。祭戀
1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 5 using namespace std; 6 7 #define MAX 1005 8 9 char ch[102][2]; 10 char ch1[MAX]; 11 char ch2[MAX]; 12 int m; 13 14 bool judge(char a,char b); 15 int main() 16 { 17 //freopen("1.txt","r",stdin); 18 // freopen("1.txt","w",stdout); 19 int t; 20 int x = 1; 21 scanf("%d",&t); 22 int len1,len2; 23 24 while(t--) 25 { 26 scanf("%s%s",ch1,ch2); 27 scanf("%d",&m); 28 memset(ch,'0',sizeof(ch)); 29 30 for(int i = 0; i < m; i++) 31 { 32 getchar(); 33 ch[i][0] = getchar(); 34 getchar(); 35 ch[i][1] = getchar(); 36 } 37 38 len1 = strlen(ch1); 39 len2 = strlen(ch2); 40 int i,j; 41 bool flag = true,flag1 = true; 42 char flag_ch; 43 for(i = 0,j = 0; i < len1&& j < len2; ) 44 { 45 if(ch1[i] == ch2[j]) 46 { 47 i++; 48 j++; 49 } 50 else 51 { 52 bool judge_x = judge(ch2[j],ch1[i]); 53 54 if(judge_x) 55 { 56 i++; 57 j++; 58 } 59 else 60 { 61 j++; 62 } 63 } 64 } 65 66 if(i < len1) flag = false; 67 68 if(flag) 69 printf("Case #%d: happy",x++); 70 else 71 printf("Case #%d: unhappy",x++); 72 printf("\n"); 73 } 74 return 0; 75 } 76 77 78 bool judge(char a,char b) 79 { 80 for(int i = 0; i < m; i++) 81 { 82 if(ch[i][0] == a && ch[i][1] == b) 83 return true; 84 } 85 return false; 86 }?
轉(zhuǎn)載于:https://www.cnblogs.com/yyroom/p/3413957.html
總結(jié)
以上是生活随笔為你收集整理的hdu 4545 魔法串 2013金山西山居创意游戏程序挑战赛——初赛(1)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Silverlight数据绑定之Data
- 下一篇: inotify监听文件夹的变动