程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> POJ1936:All in All

POJ1936:All in All

編輯:C++入門知識

Description You have devised a new encryption technique which encodes a message by inserting between its characters randomly generated strings in a clever way. Because of pending patent issues we will not discuss in detail how the strings are generated and inserted into the original message. To validate your method, however, it is necessary to write a program that checks if the message is really encoded in the final string.    Given two strings s and t, you have to decide whether s is a subsequence of t, i.e. if you can remove characters from t such that the concatenation of the remaining characters is s.  Input The input contains several testcases. Each is specified by two strings s, t of alphanumeric ASCII characters separated by whitespace.The length of s and t will no more than 100000. Output For each test case output "Yes", if s is a subsequence of t,otherwise output "No". Sample Input sequence subsequence person compression VERDI vivaVittorioEmanueleReDiItalia caseDoesMatter CaseDoesMatter Sample Output Yes No Yes No   [cpp]   #include <stdio.h>   #include <string.h>      int main()   {       char str1[100005],str2[100005];       while(~scanf("%s%s",str1,str2))       {           if(strstr(str2,str1))           {               printf("Yes\n");               continue;           }           int len1,len2,i,j,cnt = 0,flag;           len1 = strlen(str1);           len2 = strlen(str2);           for(i = 0; i<len1; i++)           {               flag = 1;               for(j = 0; j<len2; j++)               {                   if(str1[i] == str2[j])                   {                       cnt++;                       flag = 0;                       strcpy(str2,str2+j+1);                      // puts(str2);                       len2 = strlen(str2);                       break;                   }               }               if(flag)               {                   break;               }           }           if(flag)           {               printf("No\n");               continue;           }           if(cnt == len1)               printf("Yes\n");           else               printf("No\n");       }          return 0;   }    

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved