zoukankan      html  css  js  c++  java
  • 有两个字符串a,b。假设a="ab",b="cd",判断字符串c="acbd"是属于a、b的组合。满足组合后a、b的内部顺序均不变。

    #include<iostream>
    #include<string>
    using namespace std;
    
    int check(string a,string b,string c)
    {
    int lena=a.length();
    int lenb=b.length();
    int lenc=c.length();
    if(lenc!=(lena+lenb))return 0;
    
    if(a=="")
    {
    if(b==""&&c=="")return 1;
    else if(b!=""&&c!="")
    {
    for(int i=0;i<lenb;i++)
    {
    if(b.at(i)!=c.at(i))return 0;
    }
    return 1;
    }
    else return 0;
    }
    else if(b=="")
    {
    if(c=="")return 0;
    else
    {
    for(int i=0;i<lena;i++)
    {
    if(a.at(i)!=c.at(i))return 0;
    }
    return 1;
    }
    }
    else
    {
    if(a.at(0)==c.at(0)&&b.at(0)!=c.at(0))
    {
    return check(a.substr(1),b,c.substr(1));
    }
    else if(b.at(0)==c.at(0)&&a.at(0)!=c.at(0))
    {
    return check(a,b.substr(1),c.substr(1));
    }
    else if(b.at(0)==a.at(0)&&a.at(0)==c.at(0))
    {
    check(a.substr(1),b,c.substr(1));
    return check(a,b.substr(1),c.substr(1));
    }
    else return 0;
    }
    
    }
    
    int main()
    {
    string a="abc";
    string b="cd";
    string c="abcdc";
    cout<<check(a,b,c)<<endl;
    
    system("pause");
    return 0;
    }
  • 相关阅读:
    ubuntu18.04登录界面背景图的更换
    java面向对象基础知识
    java语法+变量
    sql查询
    sql的增删改查
    事件概念和事件监听
    DOM对HTML元素的增删改操作
    DOM对HTML元素访问操作2
    DOM对HTML元素访问操作
    BOM模型中常用对象的介绍
  • 原文地址:https://www.cnblogs.com/yanglf/p/3579969.html
Copyright © 2011-2022 走看看