Menu
CoddyTech

规律查找器

本课属于 Coddy C++ 学习旅程的“基础知识”单元。第 73 课,共 74 课。

challenge icon

挑战

简单

创建一个程序,接收两个整数作为输入,分别表示两个整数数组的大小,并判断第二个数组是否按连续顺序作为一种模式出现在第一个数组中。

如果第二个数组的所有元素都按相同顺序连续出现在第一个数组的某个位置,就说明存在这种模式,就像在字符串中查找子字符串一样。

例如:

int arr1[] = {1, 2, 3, 4, 5, 6, 7};
int arr2[] = {3, 4, 5};
// Should return true
int arr1[] = {5, 6, 7, 8, 9};
int arr2[] = {6, 8};
// Should return false (not consecutive)

亲手试试

#include <iostream>
#include <vector>
#include <string>

int main() {
    int n1;
    int n2;

    std::cin >> n1;
    std::cin >> n2;
    std::cin.ignore();
    int arr1[n1];
    int arr2[n2];

    for (int i = 0; i < n1; i++) {
        int val;
        std::cin >> val;
        arr1[i] = val;
    }

    for (int i = 0; i < n2; i++) {
        int val;
        std::cin >> val;
        arr2[i] = val;
    }

    // 在下方编写代码,使用 arr1、arr2、n1 和 n2。


    return 0;
}

基础知识中的所有课

自己练习: C++ 在线编译器