Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مكتشف الأنماط

جزء من قسم Fundamentals في رحلة Rust على Coddy — الدرس 74 من 75.

challenge icon

التحدي

سهل

أنشئ برنامجًا يستقبل مصفوفتين من السلاسل النصية بحجم 8 و 3 على التوالي كمدخلات، ويحدد ما إذا كانت المصفوفة الثانية تظهر كنمط داخل المصفوفة الأولى (بترتيب متتالٍ).

يوجد النمط عندما تظهر جميع عناصر المصفوفة الثانية معًا، وبنفس الترتيب، في مكان ما داخل المصفوفة الأولى، تمامًا مثل العثور على سلسلة فرعية داخل سلسلة نصية.

على سبيل المثال:

let arr1 = ["1", "2", "3", "4", "5", "6", "7", "8"];
let arr2 = ["3", "4", "5"];
// يجب أن يعيد true
let arr1 = ["5", "6", "7", "8", "9", "1", "2", "3"];
let arr2 = ["6", "8", "9"];
// يجب أن يعيد false (ليس متتاليًا)

جرّب بنفسك

use std::io;

fn main() {
    let mut input_str_arr_1 = String::new();
    let mut input_str_arr_2 = String::new();
    io::stdin().read_line(&mut input_str_arr_1).unwrap();
    io::stdin().read_line(&mut input_str_arr_2).unwrap();
    let arr1: Vec<String> = input_str_arr_1.trim().split(',').map(String::from).collect();
    let arr2: Vec<String> = input_str_arr_2.trim().split(',').map(String::from).collect();
    
    let mut result = false;
    // اكتب الكود الخاص بك أدناه



    println!("{}", result);
}

جميع دروس Fundamentals