Buscador de patrones
Parte de la sección Fundamentos del Journey de C++ de Coddy — lección 73 de 74.
Desafío
FácilCrea un programa que reciba dos enteros que indiquen el tamaño de dos arreglos de enteros como entrada y determine si el segundo arreglo aparece como un patrón dentro del primero (en orden consecutivo).
Un patrón existe cuando todos los elementos del segundo arreglo aparecen juntos, en el mismo orden, en algún lugar dentro del primer arreglo, como si se buscara una subcadena dentro de una cadena.
Por ejemplo:
int arr1[] = {1, 2, 3, 4, 5, 6, 7};
int arr2[] = {3, 4, 5};
// Should return trueint arr1[] = {5, 6, 7, 8, 9};
int arr2[] = {6, 8};
// Should return false (not consecutive)Pruébalo tú mismo
#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;
}
// Escribe tu código a continuación usando arr1, arr2, n1, n2
return 0;
}Todas las lecciones de Fundamentos
4Operadores Parte 1
Operadores aritméticosOperador móduloIncremento/DecrementoPost-incremento/decrementoAtajos aritméticosOperadores de comparaciónComparación de strings7Conceptos básicos de Entrada/Salida
Sentencia coutSentencia cinEntrada de cadenasResumen - Hasta 120Resumen - Verdadero o Falso5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 38Calculadora de números
Mensaje de bienvenidaObtención de números3Variables Parte 2
Declaración de tiposConvenciones de nomenclaturaResumen - Inicializar variablesType Casting Parte 1Type Casting Parte 26Toma de decisiones
Sentencia IfIf - ElseSentencia SwitchOperador condicionalRepaso - If ElseIf - Else anidados