自己整个吧
#include <iostream>
#include <string>
#include <vector>
usingnamespacestd;
intmarch(string &str1,string &str2)
{
intlen1 = str1.size();
intlen2 = str2.size();
vector<vector<int>> Array(len1+1,vector<int>(len2+1,0));
Array[0][0]=1;
for(inti=1;i<=len1;i++)
{
charch = str1[i-1];
Array[i][0]=Array[i-1][0]&&(ch=='*');
for(intj=1;j<=len2;j++)
{
charch2 = str2[j-1];
if(ch=='*')
Array[i][j]=Array[i-1][j]||Array[i][j-1];
else
Array[i][j]=Array[i-1][j-1]&&(ch=='?'||ch2==ch);
}
}
returnArray[len1][len2];
}
intmain()
{
string str1,str2;
while(cin>>str1>>str2)
{
intres = march(str1,str2);
if(res)
cout<<"true"<<endl;
else
cout<<"false"<<endl;
}
}