C++ 整数模式

C++ 整数模式,c++,substring,subset,subsequence,C++,Substring,Subset,Subsequence,下面是解决方案的外观 输入Y:239847239 输入X:847 X是Y的子串 输入Y:239847239 输入X:3923 X是Y的子序列 输入Y:239847239 输入X:489 X既不是Y的子串,也不是Y的子序列 下面是我编写代码的粗略尝试: int main() { cout << "Enter Y: "; vector <int> Y; int Y_number; cin >> Y_number;

下面是解决方案的外观


输入Y:239847239
输入X:847
X是Y的子串

输入Y:239847239
输入X:3923
X是Y的子序列

输入Y:239847239
输入X:489
X既不是Y的子串,也不是Y的子序列


下面是我编写代码的粗略尝试:

int main() 
{

    cout << "Enter Y: ";
    vector <int> Y;
    int Y_number;
    cin >> Y_number;

    cout << "Enter X: ";
    vector <int> X;
    cin >> X;

    if (Y > X)
    {
        for(int i = 0; i < Y.size(); i++)
        {
            Y.push_back(Y_number);
            if (Y.size(i) == X.size(i))
            {

            }
        }
    }
    else
    {
        cout << "X is neither substring nor subsequence of Y";
    }
}
intmain()
{
cout>Y_数;
cout>X;
如果(Y>X)
{
对于(int i=0;icout也许这就是你想要的:

#include <iostream>
#include <string>

using namespace std;

int main()
{
    string Y, X, YY;
    cout << "Enter Y: ";
    cin >> Y;
    cout << "Enter X: ";
    cin >> X;
    YY = Y + Y;

    if (std::string::npos != Y.find(X)) {
        cout << "X is substring of Y" << endl;
    } else if (std::string::npos != YY.find(X)) {
        cout << "X is subsequence of Y" << endl;
    } else {
        cout << "X is neither substring nor subsequence of Y" << endl;
    }
    return 0;
}
#包括
#包括
使用名称空间std;
int main()
{
字符串Y,X,YY;
cout>Y;
cout>X;
YY=Y+Y;
如果(std::string::npos!=Y.find(X)){

请正确格式化这里有很多东西,你甚至没有描述一个具体的问题(这也是为什么这个问题可能被解决的原因)。但是,这里有一些建议:首先,通过简单地使用函数,将输入与两个属性的测试分开。一个函数
bool是\u子字符串(string const&s,string const&sub)
和另一个
bool is_subsequence(string const&s,string const&sub)
,我将把谁的实现留给你。将它们分开意味着你现在有三个(两个函数加上连接它们的胶水代码)小问题,你可以分别解决。