标签:tput efi appear href span size team contain algo
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
类似leetcode第10题;
https://leetcode.com/problems/regular-expression-matching/description/
#include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #include<set> #include<map> #include<queue> #include<stack> #include<vector> using namespace std; typedef long long ll; #define PI acos(-1.0) const int N=3e3+100,maxm=1e5+100,inf=0x3f3f3f3f,mod=1e9+7; const ll INF=1e18+7; char s[N],p[N]; bool dp[2510][2510]; int main() { int T; scanf("%d",&T); while(T--) { memset(dp,false,sizeof(dp)); scanf("%s%s",s+1,p+1); dp[0][0]=1; int n=strlen(s+1); int m=strlen(p+1); for(int i=2;i<=m;i++) { dp[0][i]=p[i-1]&&dp[0][i-2]; } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(p[j]==‘*‘) { dp[i][j] = dp[i][j-2]|| dp[i][j-1] ||( s[i] == p[j-1] || ( p[j-1] == ‘.‘&& s[i]==s[i-1] ) ) && dp[i-1][j]; } else dp[i][j] = (s[i] == p[j] || p[j] == ‘.‘) && dp[i-1][j-1]; } } if(dp[n][m])printf("yes\n"); else printf("no\n"); } return 0; }
标签:tput efi appear href span size team contain algo
原文地址:http://www.cnblogs.com/jhz033/p/7412526.html