97. Interleaving String
来源:互联网 发布:天津相声广播网络直播 编辑:程序博客网 时间:2024/06/05 03:02
class Solution {
public:
bool isInterleave(string s1, string s2, string s3) {
int n1=s1.size(),n2=s2.size(),n3=s3.size();
if(n1+n2!=n3) return false;
vector<int> mp(255,0);
for(int i=0;i<n1;i++) mp[s1[i]]++;
for(int i=0;i<n2;i++) mp[s2[i]]++;
for(int i=0;i<n3;i++){
mp[s3[i]]--;
if(mp[s3[i]]<0) return false;
}
vector<vector<int> >dp(n1+1,vector<int>(n2+1,0));
dp[0][0] = 1;
for(int len = 1;len<=n3;len++){
for(int l=max(0,len-n2);l<=len&&l<=n1;l++){
if(l>0 && s1[l-1]==s3[len-1]) dp[l][len-l] |= dp[l-1][len-l];
if(len-l>0 && s2[len-l-1]==s3[len-1]) dp[l][len-l] |= dp[l][len-l-1];
}
}
return dp[n1][n2]==1;
}
};
public:
bool isInterleave(string s1, string s2, string s3) {
int n1=s1.size(),n2=s2.size(),n3=s3.size();
if(n1+n2!=n3) return false;
vector<int> mp(255,0);
for(int i=0;i<n1;i++) mp[s1[i]]++;
for(int i=0;i<n2;i++) mp[s2[i]]++;
for(int i=0;i<n3;i++){
mp[s3[i]]--;
if(mp[s3[i]]<0) return false;
}
vector<vector<int> >dp(n1+1,vector<int>(n2+1,0));
dp[0][0] = 1;
for(int len = 1;len<=n3;len++){
for(int l=max(0,len-n2);l<=len&&l<=n1;l++){
if(l>0 && s1[l-1]==s3[len-1]) dp[l][len-l] |= dp[l-1][len-l];
if(len-l>0 && s2[len-l-1]==s3[len-1]) dp[l][len-l] |= dp[l][len-l-1];
}
}
return dp[n1][n2]==1;
}
};
阅读全文
0 0
- LeetCode 97. Interleaving String
- [LeetCode]97.Interleaving String
- [Leetcode] 97. Interleaving String
- LeetCode --- 97. Interleaving String
- 97.Interleaving String
- [leetcode] 97.Interleaving String
- 97. Interleaving String
- [leetcode] 97.Interleaving String
- leetcode 97. Interleaving String
- Leetcode - 97.Interleaving String
- 97. Interleaving String
- leetcode 97. Interleaving String
- 97. Interleaving String
- LeetCode 97. Interleaving String
- LeetCode 97. Interleaving String
- Leetcode:97. Interleaving String
- Leetcode 97. Interleaving String
- [leetcode] 97. Interleaving String
- ISS 上传大小限制
- linux安装mysql数据库
- maven生命周期和插件
- servlet
- Java ArrayList异常-ConcurrentModificationException
- 97. Interleaving String
- Activiti系列:activiti5.22数据库表结构说明
- 文本自动换行
- 狂降1000!苹果最悲情产品大降价!
- vue props 取名问题
- Java 21:Spring 4(Intelij IDEA下的SpringMVC环境搭建)
- List中的set方法和add方法, 以及排序操作
- js加载
- I/O多路转接之poll