一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案。对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢?
abcde a3 aaaaaa aa #
0 3
code:
#include <iostream> #include <cstdio> #include <cstring> #include <string> using namespace std; int main(){ string scr,tar; int i,j; while(cin >> scr >> tar){ int cnt = 0; for(i = 0; i < scr.size(); i++){ int flag = 1; for(j = 0; j < tar.size(); j++){ if(tar[j]!=scr[i+j]){//一个一个比较 flag = 0;//不同标记为0,终止 break; } } if(flag){//如果发现flag没变说明完全匹配了 cnt++;//个数加1 i += tar.size()-1;//i整体移动模板字符串长度的单位再减一,因为每次循环i++ } } cout << cnt << endl; } return 0; }