Menu
Coddy logo textTech

パターン検索

CoddyのRustジャーニー「Fundamentals」セクションの一部 — レッスン 74/75。

challenge icon

チャレンジ

簡単

8つと3つの要素を持つ2つの文字列配列をそれぞれ入力として受け取り、2番目の配列が1番目の配列の中にパターンとして(連続した順序で)現れるかどうかを判定するプログラムを作成してください。

パターンが存在するとは、文字列内の部分文字列を探すように、2番目の配列のすべての要素が、1番目の配列のどこかに同じ順序でまとめて現れることを指します。

例えば:

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のすべてのレッスン