Menu
CoddyTech

Wyszukiwanie wzorów

Część sekcji Podstawy ścieżki Rust w Coddy. Lekcja 74 z 75.

challenge icon

Wyzwanie

Łatwy

Utwórz program, który przyjmuje jako dane wejściowe dwie tablice ciągów znaków o rozmiarach odpowiednio 8 i 3 oraz określa, czy druga tablica występuje jako wzorzec w pierwszej tablicy (w kolejnych pozycjach).

Wzorzec występuje wtedy, gdy wszystkie elementy drugiej tablicy pojawiają się razem, w tej samej kolejności, gdzieś w pierwszej tablicy — podobnie jak przy wyszukiwaniu podciągu w ciągu znaków.

Ustaw result na true, gdy arr2 występuje w arr1. Poniższa linia kodu wypisuje tę wartość.

Na przykład:

let arr1 = ["1", "2", "3", "4", "5", "6", "7", "8"];
let arr2 = ["3", "4", "5"];
// prints true
let arr1 = ["5", "6", "7", "8", "9", "1", "2", "3"];
let arr2 = ["6", "8", "9"];
// prints false (not consecutive)

Spróbuj swoich sił

    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;
    // Napisz swój kod poniżej

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Rust online